要把记录的内容拷贝到一字符串,该如何操作(用MOVE???)(50分)

  • 主题发起人 主题发起人 csluming
  • 开始时间 开始时间
C

csluming

Unregistered / Unconfirmed
GUEST, unregistred user!
比如:
type
GhtPacket=Record
Optcode :string[2];
Lsh :string[14];
UserId :string[10];
end;
packet:GhtPacket;
packet.optcode:='1';
packet.lsh:='123';
packet.userid:='0001';
move(packet,s^,sizeof(packet))??????
edit1.text:=s;
出错了!一堆乱数字!
救救我!!!!!!!
 
str:=packet.optcode+packet.lsh+packet.userid
 
GhtPacket=Record
Optcode :string[2];
Lsh :string[14];
UserId :string[10];
end;
不要用String,因为它前面还有一个不能直接访问的表示长度的String[0];
你可以ShowMessage(SizeOf(...))看看占用的字节
 
var
s:string;
a:byte absolute s;
...
move(packet,s[1],sizeof(packet))
a:=sizeof(packet)
就可以了嘛!
 
后退
顶部