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

全面的基础微网站开发网站如何诊断

全面的基础微网站开发,网站如何诊断,网站建设平台安全问题有哪些,响应式网站的设计趋势结构体的字节对齐方式#xff08;__attribute_pack(packed))#pragma pack()) 1、编译器的字节对齐方式 当前编译器都有默认的字节对齐方式#xff0c; struct PackedStruct {char a;int b;short c; };如上代码段中的结构体#xff0c;在编译运行后发现他的大小并不…结构体的字节对齐方式__attribute_pack(packed))#pragma pack()) 1、编译器的字节对齐方式 当前编译器都有默认的字节对齐方式 struct PackedStruct {char a;int b;short c; };如上代码段中的结构体在编译运行后发现他的大小并不是7而是12这是因为这个编译器默认是四字节对齐。 2、取消字节对齐 __attribute__((packed)) 这是 GCC 特定的编译器扩展用来告诉编译器紧凑地排列结构体的成员避免使用默认的内存对齐方式。 struct __attribute_pack((packed)) PackedStruct {char a;int b;short c; };在增加了__attribute_pack((packed))后这个结构体的大小变为了7char:1int:4short:2 7 优点 全局应用__attribute__((packed)) 作用于整个结构体告诉编译器完全取消对齐填充将所有成员紧密地排布在一起按它们声明的顺序紧凑存储。 缺点 没有灵活的控制它不允许控制特定字节的对齐边界。也就是说一旦使用了 packed整个结构体都变成了不对齐的状态。 3、设置字节对齐的位数 #pragma pack() pragma pack 可以按需指定对齐的字节数比如 1、2、4 或 8 字节对齐。这意味着你可以设置对齐到某个特定的字节边界而不是完全取消对齐。 例子 #pragma pack(2) struct PackedStruct {char a;int b;short c; };那么这个结构体的大小就变成了8 -----字节对齐为2 当 #pragma pack() 括号中没有参数的时候代表取消程序员自己设定的字节对齐但它不是和__attribute_pack((packed)))一样完全取消而是变为默认字节对齐方式。
http://www.w-s-a.com/news/872768/

相关文章:

  • 做网站银川潍坊网络科技有限公司
  • 南宁企业网站建站模板盐田高端网站建设
  • 深圳市建设局网站张局北京档案馆网站建设
  • 运动健身型网站开发网站备案掉了什么原因
  • 网站开发的前后端是什么注册网站多少钱一年
  • 彩票网站建设需要什么网站未备案被阻断怎么做
  • wordpress 版权声明网站优化排名哪家性价比高
  • dedecms网站关键词外包做网站平台 一分钟
  • 酒网站建设游戏分类网站怎么做
  • 仿牌网站安全北京大良网站建设
  • ps中怎样做网站轮播图片吉林省网站建设公司
  • 广西网站建设-好发信息网温江做网站哪家好
  • 网站建设属于什么职位类别南京哪个网站建设比较好
  • wdcp 网站备份东莞网站建设五金建材
  • 天津制作网站的公司电话wordpress架设进出销
  • tomcat做静态网站prestashop和wordpress
  • 上海响应式建站wap网站微信分享代码
  • 四川建筑人才招聘网南昌网站优化
  • 南充网站建设制作重庆有的设计网站大全
  • 深圳沙井做网站公司网站搭建谷歌seo
  • 学校资源网站的建设方案山西省住房城乡建设厅网站
  • 医疗行业网站建设深圳网络科技公司排名
  • 企业形象型网站建设wordpress chess
  • 网站的域名起什么好处罗湖网站建设公司乐云seo
  • 网站的服务器在哪里sem推广软件选哪家
  • 科技网站欣赏婚庆公司经营范围
  • 网站后台管理系统php校园网站建设意见表填写
  • 网站建设问题调查常州百度推广代理公司
  • net网站开发学习谷歌优化培训
  • 企业网站公众号广东网站建设方便