标题:系统是32位的情况下,各为大哥帮帮看看
只看楼主
lanriver
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:133
专家分:101
注 册:2008-8-9
结帖率:70.59%
已结贴  问题点数:20 回复次数:2 
系统是32位的情况下,各为大哥帮帮看看
typedef struct tagAA
{
     char a;
     short b:
     short c;
     char d;
     char e[7];
     char f;
     char g[17];
     short h;
}AA;
AA cd;
用二进制方式读文件后,
short i;
short j;
i=cd.c;//此处为何只读到一个字节
j=cd.h;//此处正确的读到二个字节
系统是32位的情况下,各为大哥帮帮看看
搜索更多相关主题的帖子: 系统 
2010-12-09 23:35
makebest
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:658
专家分:962
注 册:2005-3-17
得分:20 
在结构体前 #pragma pack(1)
在结构体后 #pragma pack(0)
不然成员变量是错位的, 原因自己搜索.
2010-12-10 09:24
lanriver
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:133
专家分:101
注 册:2008-8-9
得分:0 
Thanks!Sir
2010-12-10 23:39



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-328568-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.509096 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved