:::Delphi7 var
DataBuff: Pchar;
begin
GetMem(DataBuff, 10);//DataBuff到底可以存放几个字符?
//...
FreeMem(DataBuff);
end;我测试DataBuff可以存放任意字符,与10无关,为什么?再有
DataBuff:=Stralloc(10)
StrDispose(DataBuff);这两组我用哪个?
DataBuff: Pchar;
begin
GetMem(DataBuff, 10);//DataBuff到底可以存放几个字符?
//...
FreeMem(DataBuff);
end;我测试DataBuff可以存放任意字符,与10无关,为什么?再有
DataBuff:=Stralloc(10)
StrDispose(DataBuff);这两组我用哪个?
PCHAR结束符是nil。所以你申请10字节的内存,只能放9个字符。用FreeMem()释放。
是这样的。初学者很容易在这里搞错的哦。