内存对齐(字节对齐)

结构体成员在内存中是如何存储的呢?到底是怎么存储的呢?按字节对齐的方式存储的!

声明结构体类型时,各类型成员的前后位置会对结构体变量所占的字节数产生影响;


内存对齐可以大大提升内存访问速度,是一种用空间换时间的方法;内存不对齐会导致每次读取数据都会读取两次,使得内存读取速度减慢


内存对齐:
1、在有#pragma pack(N)宏的情况下,所有内存都按照这个宽度取布局(N取1 2 4 8)
2、没有宏的情况下,结构体宽度最大成员的宽度决定


编程为什么要关注内存对齐:
1、节省内存
2、union的内存对齐需要
3、内存拷贝(通讯数据接收处理时数组和结构体的搭配)
4、仿真压栈数据

参考文章如下:

  文章1()

  文章2

  文章3

 

posted @ 2021-02-01 15:30  我爱茜茜公主  阅读(130)  评论(0)    收藏  举报