这段代码输出很奇怪,不知道为什么?typedefstruct_DCB{intf:8intk:1}DCBintmain(){DCBaa.f8cout a
这段代码输出很奇怪,不知道为什么?
typedef struct _DCB
{
int f:8;
int k:1;
}DCB;
int main()
{
DCB a;
a.f=8;
cout < <a.f < <endl;
cout < <a.f < <endl < <a.k < <endl < < "End of Function! " < <endl;
return 0;
}
//最后输出的数字很奇怪,不是看上去的数,在VC跟DEV中不一样
[解决办法]
有什么不一样呢?
[解决办法]
VC 好像有自定义的 使用内存 初始化过程
[解决办法]
只使用int(系统给定32位)的9位或者7位
[解决办法]
typedef struct _DCB
{
int f:9;
int k:7;
}DCB; //表示结构DCB只占用 (16 = (9 + 7)) 个比特位,这是C语言的一种用法
