如何避免填充,以便结构不使用额外的字节

时间:2015-03-04 21:39:27

标签: c++ c gcc

我的一个数组需要14个字节但在映射文件中它显示为16个字节(即下一个变量在16个字节的内存之后分配)。 我希望它不要使用超过14个字节,即填充空间不应该出现在地图文件中。

我有什么选择呢?

是否可以使用任何编译器选项完成?

2 个答案:

答案 0 :(得分:2)

您可能希望在结构周围使用#pragma pack。有关某些文档,请参阅https://gcc.gnu.org/onlinedocs/gcc/Structure-Packing-Pragmas.html

在结构定义之后的#pragma pack(1)之前尝试#pragma pack()

答案 1 :(得分:0)

您的平台可能会选择“打包”'对于部分。然后将具有此的部分与字节对齐