位域:为了压缩空间而存在
void main()
{
unsigned a,b;
struct bitfield
{
int a:5;
int b:2;
int c:1;
};
a=sizeof(bitfield);
b=sizeof(int);
printf("a=%d\nb=%d\n",a,b);
}
a=4
b=4
Press any key to continue
void main()
{
unsigned a,b;
struct bitfield
{
char a:5;
char b:2;
char c:1;
};
a=sizeof(bitfield);
b=sizeof(char);
printf("a=%d\nb=%d\n",a,b);
}
a=1
b=1
Press any key to continue
void main()
{
unsigned a,b;
struct bitfield
{
int a:29;
int b:29;
int c:5;
};
a=sizeof(bitfield);
b=sizeof(int);
printf("a=%d\nb=%d\n",a,b);
}
a=12
b=4
Press any key to continue
void main()
{
unsigned a,b;
struct bitfield{
int a:29;
int b:29;
int c:1;
};
a=sizeof(bitfield);
b=sizeof(int);
printf("a=%d\nb=%d\n",a,b);
}
a=8
b=4
Press any key to continue
这波儿你学到了吗