当前位置: 首页 > news >正文

湖南汽车软件网站建设免费网站空间 asp.net

湖南汽车软件网站建设,免费网站空间 asp.net,wordpress 更换首页,wordpress和微信公众号互通接触过c语言的同学应该都知道字节对齐。有些时候我们很容易弄错字节对齐的方式#xff0c;特别是涉及到struct#xff08;结构体#xff09;和union#xff08;联合体#xff09;时。今天我们通过详细例子来说明下struct和union的对齐规则#xff0c;以便了解各种struct和…    接触过c语言的同学应该都知道字节对齐。有些时候我们很容易弄错字节对齐的方式特别是涉及到struct结构体和union联合体时。今天我们通过详细例子来说明下struct和union的对齐规则以便了解各种struct和union所占字节具体计算方式。 一、基础环境信息 我本地计算机系统各类基础类型所占字节如下 int main() {printf(the sizeof char is %d\n,sizeof(char));printf(the sizeof int is %d\n,sizeof(int));printf(the sizeof unsigned is %d\n,sizeof(unsigned));printf(the sizeof short is %d\n,sizeof(short));printf(the sizeof long is %d\n,sizeof(long));printf(the sizeof float is %d\n,sizeof(float));printf(the sizeof double is %d\n,sizeof(double));printf(the sizeof longlong is %d\n,sizeof(long long));} 二、结构体字节对齐 2.1结构体对齐规则 结构体中寻找所有成员中占字节数最大成员其余成员根据占字节数最大成员拼凑或者插入空位构成n个n1)最大成员字节。 2.2实例 上图例子实测 int main() {struct stu{char a;int b;short c;char d;};struct stu s;printf(the sizeof s is %d\n, sizeof s);printf(the address a is %x\n, s.a);printf(the address b is %x\n, s.b);printf(the address c is %x\n, s.c);printf(the address d is %x\n, s.d); } 对于如下结构体最大类型为b占4字节cda拼凑占4字节总共8字节 struct stu{int b;short c;char d;char a; };int main() {struct stu{int b;short c;char d;char a;};struct stu s;printf(the sizeof s is %d\n, sizeof s);printf(the address b is %x\n, s.b);printf(the address c is %x\n, s.c);printf(the address d is %x\n, s.d);printf(the address a is %x\n, s.a); } 对于如下结构体 f为最大类型占8字节成员e需要以8字节对齐所以stu1占16字节成员bcd拼凑占8字节成员a分配8字节进行对齐总共占32字节 struct stu{int b;short c;char d;struct stu1{char e;double f;} stu1;char a; };int main() {struct stu{int b;short c;char d;struct stu1{char e;double f;} stu1;char a;};struct stu s;printf(the sizeof s is %d\n, sizeof s);printf(the address b is %x\n, s.b);printf(the address c is %x\n, s.c);printf(the address d is %x\n, s.d);printf(the address stu1 is %x\n, s.stu1);printf(the address e is %x\n, s.stu1.e);printf(the address f is %x\n, s.stu1.f);printf(the address a is %x\n, s.a); } 三、联合体字节对齐 3.1联合体对齐规则 联合体字节对齐计算非常简单为所有成员中所占字节最大成员的字节数。 3.2实例 上图例子实测 int main() {union stu{char a;int b;short c;char d;};union stu s;printf(the sizeof s is %d\n, sizeof s);printf(the address b is %x\n, s.b);printf(the address c is %x\n, s.c);printf(the address d is %x\n, s.d);printf(the address a is %x\n, s.a);s.b 0b00000011000000110000001100000011;printf(the value of b is %d\n, s.b);printf(the value of c is %d\n, s.c);printf(the value of d is %d\n, s.d);printf(the value of a is %d\n, s.a); } 对于如下联合体stu中成员stu1按照struct对齐规则占8字节所以联合体stu占8字节。 union stu{char a;int b;short c;struct stu1{char e;int f;}stu1;char d; };int main() {union stu{char a;int b;short c;struct stu1{char e;int f;}stu1;char d;};union stu s;printf(the sizeof s is %d\n, sizeof s);printf(the address a is %x\n, s.a);printf(the address b is %x\n, s.b);printf(the address c is %x\n, s.c);printf(the address e is %x\n, s.stu1.e);printf(the address f is %x\n, s.stu1.f);printf(the address d is %x\n, s.d);}
http://www.hkea.cn/news/14341175/

相关文章:

  • 湖南手机版建站系统信息seo技术推广
  • 网站备案要网站做才可以使用吗网页美工设计视频
  • 微信微网站开发建设银行插u盾网站上不去
  • 番禺网站建设品牌好徐老师在那个网站做发视频下载
  • 签名设计网站什么建设网站
  • 网站建设简述需求分析的基本概念及内容做网站运营有提成吗
  • 个人网站首页设计优秀作品哪个做网站公司好
  • 果洛营销网站建设表白墙网站怎么做
  • 平凉建设局网站wordpress建站企业
  • 用asp做网站需要什么软件wordpress 管理员登录
  • 广州站八个字页面设计包括插画吗
  • 学院二级网站建设方案模板WordPress的SEO插件安装失败
  • 网络营销人员应具备哪些技能东莞百度seo新网站快速排名
  • 网站建设如何查看后台数据库手机网站锁定竖屏看代码
  • 怎么做网站 先简单的聊一下wordpress 悬赏功能
  • 培训网站建设方案说明书智能建站大师官网平台
  • 中国域名后缀是什么系统优化软件排行榜
  • wordpress 目录 导航肇庆市seo网络推广
  • 建网站大概多少费用网站系统改教程
  • wordpress知名网站通过照片街景识别的地图
  • 智能ai写作免费网站厦门方易网站制作有限公司
  • 芜湖市住房和城乡建设厅网站湖北高端企业礼品定制
  • 无锡做网站365caiyi商标设计网站推荐
  • 公司网站的作用网站建设覀金手指科杰
  • 网站建设选青岛的公司好不好高埗仿做网站
  • wordpress悬浮刷新seo优化的内容有哪些
  • 营销型网站设计流程学院网站建设需求说明书
  • 宿迁市建设局网站维修基金wordpress调图片大小
  • 济阳网站建设哪家好网站建设怎么找到客户
  • wordpress文章归档 文章显示数量西安网站优化培训