
如何混合delphi和c的数据结构
1个回答
展开全部
string的问题。
type
PMyRecord = ^TMyRecord;
TMyRecord = record
I: Integer;
S: string;
V: Variant;
end;
{;$DEFINE NEW}
var
R: PMyRecord;
I: Integer;
begin
begin
for I := 1 to 1024 do
begin
{$IFDEF NEW}
New(R); // 正确将 R.S 初始化
SetLength(R.S, $FFFF);
Dispose(R); // 正确释放 R.S 内存空间
{$ELSE}
GetMem(R, SizeOf(TMyRecord));
//R.S := ''; // 出错
SetLength(R.S, $FFFF);
FreeMem(R);
{$ENDIF}
end;
end;
end.
R.S := ''; // 出错
这一句注不注释都出错,请问是什么原因啊。
还有$FFFF是什么意思。
SetLength(某个string,xxx),之后才能把这个string转成pchar,是什么原因呢。
type
PMyRecord = ^TMyRecord;
TMyRecord = record
I: Integer;
S: string;
V: Variant;
end;
{;$DEFINE NEW}
var
R: PMyRecord;
I: Integer;
begin
begin
for I := 1 to 1024 do
begin
{$IFDEF NEW}
New(R); // 正确将 R.S 初始化
SetLength(R.S, $FFFF);
Dispose(R); // 正确释放 R.S 内存空间
{$ELSE}
GetMem(R, SizeOf(TMyRecord));
//R.S := ''; // 出错
SetLength(R.S, $FFFF);
FreeMem(R);
{$ENDIF}
end;
end;
end.
R.S := ''; // 出错
这一句注不注释都出错,请问是什么原因啊。
还有$FFFF是什么意思。
SetLength(某个string,xxx),之后才能把这个string转成pchar,是什么原因呢。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询