/Zp (Struct Member Alignment)

 

The latest version of this topic can be found at -Zp (Struct Member Alignment).

Controls how the members of a structure are packed into memory and specifies the same packing for all structures in a module.

Syntax

/Zp[1|2|4|8|16]  

Remarks

When you specify this option, each structure member after the first is stored on either the size of the member type or n-byte boundaries (where n is 1, 2, 4, 8, or 16), whichever is smaller.

The available values are described in the following table.

1
Packs structures on 1-byte boundaries. Same as /Zp.

2
Packs structures on 2-byte boundaries.

4
Packs structures on 4-byte boundaries.

8
Packs structures on 8-byte boundaries (default).

16
Packs structures on 16-byte boundaries.

You should not use this option unless you have specific alignment requirements.

You can also use pack to control structure packing. For more information about alignment, see:

To set this compiler option in the Visual Studio development environment

  1. Open the project's Property Pages dialog box. For details, see How to: Open Project Property Pages.

  2. Click the C/C++ folder.

  3. Click the Code Generation property page.

  4. Modify the Struct Member Alignment property.

To set this compiler option programmatically

See Also

Compiler Options
Setting Compiler Options