【发布时间】:2012-06-15 09:36:45
【问题描述】:
在VC++上,为什么编译器只在使用非char数据类型时才填充struct?
即
struct TEST
{
char a[7];
};
struct TEST2
{
__int32 a;
char b[7];
};
sizeof(TEST); // Returns 7
sizeof(TEST2); // Returns 12
【问题讨论】:
-
这完全是编译器特定的。你用什么编译器测试这个?
标签: c++ visual-c++ compiler-construction padding memory-alignment