admin 管理员组

文章数量: 1184232

1. 何为内存对齐,内存补齐

- 内存对齐: 第一个数据成员放在offset为0的地方,对齐按照 对齐系数 自身所占用的字节数 中,两者比较小的那个进行对齐。
- 内存补齐 在struct或者union数据成员完成各自 对齐之后 ,struct或者union本身也要对齐,对齐 按照对齐系数 struct或者union中最大数据成员长度 中比较小的那个进行。先局部成员对齐,然后再全局对齐。

2.内存对齐优点

性能原因:数据结构(尤其是栈)应该尽可能地在自然边界上对齐。内存是一组一组读取的(4个一组或8个一组读取),为了访问未对齐的内存,处理器需要作两次内存访问;而对齐的内存访问仅需要一次访问(数据存放在同一个组只需要一次读取,如果分散在不同的组,需要两次读取)。

3.例题解答

struct One{
   
   double d;char c;int i;}

本文标签: 对齐 内存对齐 编程