Delphi的字节对齐和简单string结构

来源:互联网 发布:js cookie存储时间 编辑:程序博客网 时间:2024/05/19 20:42
procedure TForm1.Button1Click(Sender: TObject);
type
TTest = record
sAccount: string[31]; // 如果不加Packed 30和31是相同的大小 虽然是相同的,如果网络编程,传递后转换,Delphi是识别不出来的,会出现越界问题。
sChrName: string[15];
sUserAddr: string[15];
nSessionID: Integer;
end;
var
LLh: TTest;
begin
LLh.sAccount := '1234';
ShowMessage(Format('%d, %d, %x', [SizeOf(LLh), Integer((PChar(@LLh))^), Integer(LLh.sAccount[1])])); // 48, 4
// sAccount: string[12] 字节 13 , sAccount[1]前一个字节是长度
end;
0 0
原创粉丝点击