64,654
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
using namespace std;
struct bit
{
int a:3;
int b:2;
int c:3;
};
int main()
{
bit s;
char *c=(char*)&s;
cout <<sizeof(bit) <<endl; //4 --> 3+2+3=8占一个字节,所以bit结构体占一个int的大小就足够了。
*c=0x99; //二进制--->1001 1001 看下面
cout << s.a <<endl <<s.b <<endl <<s.c <<endl; //1 -1 -4
int a=-1;
printf("%x\n",a); //ffffffff
return 0;
}
//内存结构
// 100 11 001
// c b a
// -4 -1 1