【发布时间】:2016-02-08 05:54:44
【问题描述】:
我有一个用 Delphi 4 编写的程序,并试图将其转换为 delphi xe10。我不明白的一部分是这个。
Cmd[0] := 2; // Number of equipment to talk to
Cmd[1] := 22; // My device address
Cmd[2] := 0;
MResults.Lines.Add('Reciving...');
Refresh();
Srlen := High(RecBuff);
Ret := GpListen(@Cmd, @Srlen, @RecBuff); // gets returned value
if CheckRet('GpListen', (Ret and $FF), csBuf) = 0 then
begin
RecBuff[Srlen] := Chr(0); // ??
MResults.Lines.Add(RecBuff); // returned
//csBuf := Format('????', [Srlen]); ////?some error??
end;
问题是 RecBuff (RecBuff:array[0..9999] of Char;) 它以 #0 开头,如下所示:
但尽快
Ret := gpListen(@cmd, @srlen, @recbuff);
运行 recbuff 现在看起来像这样:
【问题讨论】:
-
我已经为你插入了图片。下次有两个提示:1)我们不需要这些大屏幕截图,只需要相关的局部变量部分就可以了 2)永远不要在没有指定变量类型的情况下将代码放在你的问题中(我们现在必须假设什么动物 cmd 是)。