1.数据对齐(学习“C语言结构体”和“32位与64位内存与运行区别”所得)
《个人学习随笔》
问题的由来:
(图一)
从上图引申一下数据类型对应字节
(图二)
数据对齐,是牺牲一些内存,加快运行效率。其过程由编译器自动执行,但牺牲多少内存由个人程序设计决定。
比如可以给编译器传递预编译指令而改变对指定数据的对齐方法,通过添加预定义命令#pragma pack(value)来对对齐值进行自定义。
如写入预编译指令#pragma pack(2),即告诉编译器按两字节对齐;如#pragma pack(1),对齐值变为1,此时内存紧凑,不会出现内存浪费,但效率降低了。
效率之所以降低,
原创
2020-05-28 21:53:45 ·
318 阅读 ·
0 评论