集合体データ位置合わせ

構造体は、32 ビット・モードでも 64 ビット・モードでも、最も厳密に位置合わせされているメンバーに合わせて位置合わせされます。ただし、64 ビットでは long 型とポインターのサイズおよび位置合わせが変わるため、構造体の最も厳密なメンバーの位置合わせも変わる可能性があり、その場合は、構造体そのものの位置合わせにも変化が生じます。

ポインターまたは long 型を含む構造体は、32 ビット・アプリケーションと 64 ビット・アプリケーションで共用することはできません。long 型と int 型を共用するか、あるいはポインターを int 型にオーバーレイする共用体は、変更されるか、さもなければ位置合わせが破壊されます。通常は、最も単純なものを除くすべての構造体について、位置合わせとサイズの依存関係を調べる必要があります。

データ構造体 (ビット・フィールドを含む構造体など) の位置合わせについて詳しくは、 集合体内のデータの位置合わせを参照してください。 IBM Copyright 2003