【发布时间】:2011-02-20 03:52:02
【问题描述】:
嗯...为什么当我打印 sizeof(struct MyStruct) 时,它会为这段代码输出 3(而不是 2)?
#pragma pack(push, 1)
struct MyStruct
{
unsigned char a : 6;
union
{
struct
{
unsigned int b : 9;
};
};
};
#pragma pack(pop)
以防万一,我在 Windows 7 x64 上运行 MinGW GCC 4.5.0,但老实说,结果对我来说已经够奇怪了,我认为编译器和操作系统在这里并不重要。 :\
【问题讨论】:
标签: c struct unions bit-fields