内存对齐问题的了解和使用

内存对齐

内存对齐解决了什么问题?

内存对齐是为了提高程序运行的效率而诞生的,因为CPU在读取/写入数据时都是以机器字长为单位的,并且只能读取以特定地址起始的数据,当某些数据的内容刚好横跨了机器字长的边界时,这意味着CPU要多次读取才能访问到全部的内容。而内存对齐就是防止这一现象发生。

内存对齐的规则是什么?

内存对齐的定义:某个元素的内存地址大小为Addr时,当它满足Addr%X == 0时,就称Addr按照X字节是对齐的,而实际的X必须是2的次方才行。

结构体内存对齐的实现:通过在不满足内存对齐的成员后添加padding空间来保证每个成员的内存对齐

结构体的内存对齐主要有以下两个规则:

  1. 结构体
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值