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

结构体中的位字段有关问题.

2012-03-07 
结构体中的位字段问题...最近在看到C++Primer中文第5版中介绍结构体中的位字段时,书上说:C++允许指定占用

结构体中的位字段问题...
最近在看到C++   Primer中文第5版中介绍结构体中的位字段时,书上说:  
        C++允许指定占用特定位数的结构成员,以方便硬件设备上的寄存器编程.字段的类型应为整形或枚举,后跟冒号,冒号后是一个数字,它指定了使用的位数.也可以使用没有名称的字段来提供间距.
Example:
        struct   torgle_register
{
        unsigned   int   SN:   4;       //4   bits   for   SN   value
        unsigned   int   :   4;           //4   bits   unused
        bool   goodIn:   1;               //valid   inut   (1   bit)
        bool   goodTorgle   :   1;     //successful   torgling
};
torgle_register   tr   =   {   14,   true,   false   };
但是sizeof(torgle_register)时为什么返回的结果为8个字节呀,应该是4+4+1+1=10   bits   呀?

[解决办法]
搜索 内存对齐

看看基础知识

热点排行