文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>位字段

位字段

时间:2007-04-17  来源:jesse-

 #include<stdio.h>
int main()
{

//位字段声明

struct pack
{
unsigned  a: 2;       //说明a占2位
unsigned  b: 6;      //b占6位
} data;


printf("%d\n",sizeof(data));


data.b = 64;
printf("%d\n",data.b);
}

在VC编译器下运行,几个总结:

1。当你未初始化结构体的变量时,打印它里面的数据,结构都为零。

2。unsigned默认为unsigned int

3。上面的a + b只占一个字节,小于一个int,结果整个结构体只占4个字节(int占4个字节)。若它们所占的字节超过4,那么结构体将占两个int,即8个字节。要注意的是,无论是a还是b都不能超过它的类型的大小。

4。当给a或b赋值时,若超过它们的位数,输出的指将被截断。

5。结构体所占字节,要看a+b的结构值是多少,假如小于4字节(一个int),那么结构体将占4个字节,假如超过那么结构体就是8个字节,4的倍数。

注意:可以被说明成signed 但都要明确说明,还有就是不能对a,b进行&操作,因为它们不是地址。

相关阅读 更多 +
排行榜 更多 +
步行僵尸2无限金币版

步行僵尸2无限金币版

体育竞技 下载
狐狸一号特殊任务无限金币版

狐狸一号特殊任务无限金币版

体育竞技 下载
忍者之雷复仇无限金币钻石版

忍者之雷复仇无限金币钻石版

体育竞技 下载