• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

C语言的内存对齐怎么理解

DengQilong 2017-12-06 浏览量:607
如题
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 字节对齐的作用不仅是便于cpu快速访问,同时合理的利用字节对齐可以有效地节省存储空间。
    对于32位机来说,4字节对齐能够使cpu访问速度提高,比如说一个long类型的变量,如果跨越了4字节边界存储,那么cpu要读取两次,这样效率就低了。但是在32位机中使用1字节或者2字节对齐,反而会使变量访问速度降低。所以这要考虑处理器类型,另外还得考虑编译器的类型。在vc中默认是4字节对齐的,GNU gcc 也是默认4字节对齐。
    • 发布于 2017-12-06
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:2
  • 在内存中数据的存储是以对齐的字节为倍数的
    • 发布于2017-12-06
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :同一物料 回复

  • 在使用DMA时,有时一次就是移植32位,而不够32位的就要对齐了,有一部分没有意义的数据
    • 发布于2017-12-14
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

C语言的内存对齐怎么理解