从品牌网站建设到网络营销策划,从策略到执行的一站式服务
目录
10年积累的网站建设、做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站设计后付款的网站建设流程,更有兴隆免费网站建设让你可以放心的选择与我们合作。一、什么是位段
二、位段的内存分配
三、位段的跨平台问题
四、举例
位段的声明和结构体类似,但有两个不同:
1、位段的成员必须是int、unsigned int或signed int(char其实也可以)
2、位段的成员名后边有一个冒号和一个数字。
eg:
struct A
{
int a:2;
int b:5;
int c:10;
int d:30;
};
A就是一个位段类型
那位段A的大小是多少呢?这就不得不先讲讲位段的内存分配问题。
二、位段的内存分配1、位段的成员可以是unsigned int,signed int或char
2、位段空间上是按照需要以4个字节(int)或者1个字节(char)的方式来开辟的。
3、位段涉及很多不确定因素,位段是不跨平台的,注重可移植的程序应该避免使用位段。
三、位段的跨平台问题1、int位段被当成有符号数还是无符号数是不确定的。
2、位段中大位的数目不能确定。(16位机器大16,32位机器大32,写成27,在16位机器下就会出问题)
3、位段中的成员在内存中从左向右分配还是从右向左分配标准尚未定义。
4、当一个结构体包含两个位段,第二个位段成员比较大,无法容纳第一个位段剩余位时,是舍弃剩余位还是利用,这是不确定的。
四、举例在vs2019环境下举例:首先,int是32bit的,a占了2bit,b占5bit,c占10bit
然后,这32字节就只剩下15个bit了,不够30bit,所以,再拿32bit给d,struct
A就总共占8字节(64bit)。
struct A
{
int a:2;
int b:5;
int c:10;
int d:30;
};
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图