string本身就是一个字符型的数组,一般的可以使用setlength给它定义长度,但是不常用而已
string[8]应该指的是读取一个string变量中的第八个字符

解决方案 »

  1.   

    string,在{$h+}下是长字符串,这也是默认的,
    长字符串好象是一指针,当字符串为空时,指针为nil,当赋一内容时,delphi会自动的在堆中
    分配一块内存,并把地址值赋给改字符串变量,而相对于该地址的负偏移量4的内容为字符串
    的长度,负偏移量8的内容为引用计数,当在此字符串赋给另一字符串变量时,引用计数会增加
    当其中有一字符串改变了内容,delphi会重新分配内存,并把该地址赋给该字符串变量,原来的那
    个引用计数相应的会减一,当以字符串的引用计数为零时,会释放内存,当字符串的所有引用变量
    超出作用范围时会释放内存,另外当给一字符串赋为空字符串时,会释放它的内存,地址为nil