您的位置:首页 > 其它

位域运算,位域bs的存储

2014-01-13 16:10 239 查看
#include<stdio.h>

struct bs

{

 unsigned a:1;

 unsigned b:3;

 unsigned c:4;

}bit,*pbit;

main()

{

 char x;

 bit.a=1;

 bit.b=7;

 bit.c=15;

 printf("%d %d %d",bit.a,bit.b,bit.c);

 x=0;

 memcpy(&x,(char*)&bit,sizeof(char));

 printf("0.x=0x%x,x=%d\n",x,x);

 pbit=&bit;

 pbit->a=0;

 pbit->b&=3;

 pbit->c|=1;

 printf("%d %d
%d",pbit->a,pbit->b,pbit->c);

 x=0;

 memcpy(&x,(char*)pbit,sizeof(char));

 printf("1.x=0x%x,x=%d\n",x,x);

}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: