- 872 名前:デフォルトの名無しさん [05/01/14 13:00:57]
- 自分の自作言語でC言語の構造体のアラインメントを
エミュレートしたいのですが、メンバオフセットの決め方がよくわかりません。 例えば#pragma pack(4)のとき、 typedef struct { int a; // offset 0 char b[1]; // offset 4 int c; // offset 8 } X; となるのはいいんですが、 typedef struct { int a; // offset 0 char b[1]; // offset 4 short c; // offset 6 short d; // offset 8 int e; // offset 12 } Y; shortが offset=6になる理屈がわかりません。 これは暗黙的にwordのアラインメントも働いているということでしょうか?
|

|