Board logo

标题: [求助]关于位域 紧急!!! [打印本页]

作者: zhang65536    时间: 2008-6-30 17:54     标题: [求助]关于位域 紧急!!!

union{
struct{
word XLength:8;
word nouse:5;
word datatype:1;
word operation:2;
}Sx;
struct{
word XLength:5;
word YLength:8;
word datatype:1;
word operation:2;
}Sxy;

word w;
}UIndexType;

请问版主: 如上定义的一个联合,如果我给UIndexType.w=0x401e 那么UIndexType.Sxy.XLength=0x1e 但是UIndexType.Sx.XLength却等于0x40,这到底是怎么回事?我用的是CodeWarrior for hcs12 V4.7


作者: wangnan    时间: 2008-6-30 21:33

出4.7啦?
作者: wangnan    时间: 2008-6-30 21:45

你定义的union好像应该占两个字的空间吧!
作者: zhang65536    时间: 2008-7-1 08:39

一共就16位,我发现同一个工程在4.5和在4.7下的编译结果是不同的。我的工程如下,请版主帮忙看一下,是不是应该打开什么编译选项? E1VTZzV1.rar (667.13 KB)


附件: [[求助]关于位域 紧急!!!] E1VTZzV1.rar (2008-7-1 08:23, 667.13 KB) / 下载次数 205
http://bbs.eccn.com/attachment.php?aid=4585&k=9e88137b1d55cf1c9cf7b824cd8f3e02&t=1732524129&sid=Ve8EwU
作者: strongchen    时间: 2008-7-2 11:25

我想这是4.7的一个BUG。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0