S
snowrain
Unregistered / Unconfirmed
GUEST, unregistred user!
PTest=^RTest;
RTest=Record
Name:string[20];
Identifier:integer;
Content:string;
end;
prcedure test;
var
pTest;
begin
New(p);
p^.Name:='...';
...
end;
这种情况下New(p)可以分配多少内存,结构中有一个Content是一个string变量,在分配内存时,具体应该分配给content多少内存?string这种变量我一直不是很清楚,它不像string[20]那么单纯,只分配21个字节。
也就是说,
string这类变量一旦放在record(结构)中,那么内存分配就不是很清楚了,就像一个指向这个record的指针,new一下具体应该怎么分配内存?
请大侠给我详细讲讲,谢谢。
RTest=Record
Name:string[20];
Identifier:integer;
Content:string;
end;
prcedure test;
var
pTest;
begin
New(p);
p^.Name:='...';
...
end;
这种情况下New(p)可以分配多少内存,结构中有一个Content是一个string变量,在分配内存时,具体应该分配给content多少内存?string这种变量我一直不是很清楚,它不像string[20]那么单纯,只分配21个字节。
也就是说,
string这类变量一旦放在record(结构)中,那么内存分配就不是很清楚了,就像一个指向这个record的指针,new一下具体应该怎么分配内存?
请大侠给我详细讲讲,谢谢。