关于结构体内存的对齐方式,请教高手,救命

vcbear 2001-09-21 03:45:26
t1=record
Phone:array[0..15] of char;
psw :array[0..5] of char;
Id :single;
end;
前两个数组共22个字节,由于需要按4个字节对齐,实际上他们共占了24个字节,导致id和数组psw最后一个字节之间差两个字节,而我想将一个缓冲区(连续的数据)整个复制到这个结构体里,就会出现错误。怎么办?怎么改对齐方式,让它按字节对齐!不要留空隙。

谢谢!!
...全文
72 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hellion 2001-09-21
  • 打赏
  • 举报
回复
用packed record
vcbear 2001-09-21
  • 打赏
  • 举报
回复
切,要不是急了一点,还不用发这个帖子呢
holyfire 2001-09-21
  • 打赏
  • 举报
回复
每次到Delphi版来,好像都是赚的熊熊的分^_^
vcbear 2001-09-21
  • 打赏
  • 举报
回复
Aligned record fields Aligns elements in structures to 32-bit boundaries. Corresponds to {$A}.


在Option->compile里找到这个选项,把它取消了,不知道有没有用

实验中..

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧