首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于结构体计算的一个有关问题

2013-10-15 
关于结构体计算的一个问题struct m_Struct{unsigned int aaa:5unsigned int bbb:1unsigned int ccc:1un

关于结构体计算的一个问题
struct m_Struct
{
unsigned int aaa:5;
unsigned int bbb:1;
unsigned int ccc:1;
unsigned int ddd:1; 
m_tmp()
{
aaa= 0;
bbb= 0;
ccc= 0;
ddd     = 0;
}
};

m_Struct tmp;
tmp.aaa = 2;
int calcValue = *(int*)&tmp;
请问 calcValue的值等于多少呢?定义成员后面的“:数字”是什么含义呢? 这种方法把结构体取地址转换成整形的值,具体内部的计算逻辑是怎么样计算的呢?由于现在没有编译器,无法验证。明天验证后结贴。 结构体
[解决办法]
这是一个古老的语法了,现在不是很常见了,你在网上搜一下“C++ 位域”会有很详细的说明
这个题的答案应该是16,我口算了,没笔没纸,你可以验证一下,搜一下上面的关键字看明白你就懂了

热点排行