/Zp (構造体メンバーの配置)
構造体のメンバーがメモリにパックされる方法を制御し、モジュールのすべての構造体に同じパッキングを指定します。
/Zp[1|2|4|8|16]
解説
このオプションでは、バイト数も指定できます。バイト数を指定すると、2 番目以降の構造体メンバーは、メンバー型のサイズか n バイト境界 (n は 1、2、4、8、または 16 のいずれか) のどちらか小さい方に格納されます。
使用できる値を次の表に示します。
1
構造体を 1 バイト境界上にパックします。/Zp と同じ。2
構造体を 2 バイト境界上にパックします。4
構造体を 4 バイト境界上にパックします。8
構造体を 8 バイト境界上にパックします (既定値)。16
構造体を 16 バイト境界上にパックします。
配置を行う必要が特にない場合は、このオプションを使わないでください。
pack を使用して、構造体のパック方式を制御することもできます。代入の詳細については、次のトピックを参照してください。
構造体の配置例 (x64 固有)
Visual Studio 開発環境でこのコンパイラ オプションを設定するには
プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。詳細については、「方法 : プロジェクト プロパティ ページを開く」を参照してください。
[C/C++] フォルダーをクリックします。
[コード生成] プロパティ ページをクリックします。
[構造体メンバーのアライメント] プロパティを変更します。
このコンパイラ オプションをコードから設定するには
- StructMemberAlignment を参照してください。