うーん... を印刷するとsizeof(struct MyStruct)
、このコードに対して (2 ではなく) 3 が出力されるのはなぜですか?
#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 を実行していますが、正直なところ、結果は奇妙で、コンパイラと OS はここではあまり重要ではないと思います。:\