/Zp (Allineamento membri struct)
Controlla il modo in cui i membri di una struttura vengono compressi in memoria e specifica la stessa compressione per tutte le strutture in un modulo.
Sintassi
/Zp
[1
16
|||8
|2
4
]
Osservazioni:
L'opzione /ZpN
indica al compilatore dove archiviare ogni membro della struttura. Il compilatore archivia i membri dopo il primo su un limite minore delle dimensioni del tipo di membro o di un limite di N byte.
I valori di compressione disponibili sono descritti nella tabella seguente:
Argomento /Zp | Effetto |
---|---|
1 | Comprime le strutture sui limiti a 1 byte. Uguale a /Zp . |
2 | Comprime le strutture sui limiti a 2 byte. |
4 | Comprime le strutture sui limiti a 4 byte. |
8 | Crea pacchetti di strutture su limiti a 8 byte (impostazione predefinita per x86, ARM e ARM64). |
16 | Include strutture su limiti a 16 byte (impostazione predefinita per x64 e ARM64EC). |
Non usare questa opzione a meno che non si disponga di requisiti di allineamento specifici.
Avviso
Le intestazioni C/C++ in Windows SDK presuppongono che venga usato l'allineamento predefinito della piattaforma. Non modificare l'impostazione rispetto all'impostazione predefinita quando si includono le intestazioni di Windows SDK, usando /Zp
nella riga di comando o usando #pragma pack
. In caso contrario, l'applicazione potrebbe causare il danneggiamento della memoria in fase di esecuzione.
È anche possibile usare il pragma per controllare la pack
compressione della struttura. Per ulteriori informazioni sull'allineamento, vedere:
Per impostare l'opzione del compilatore nell'ambiente di sviluppo di Visual Studio
Aprire la finestra di dialogo Pagine delle proprietà del progetto. Per informazioni dettagliate, vedere Impostare il compilatore e le proprietà di compilazione.
Selezionare la pagina delle proprietà Proprietà>di configurazione C/C++>Generazione codice.
Modificare la proprietà Struct Member Alignment .
Per impostare l'opzione del compilatore a livello di codice
- Vedere StructMemberAlignment.
Vedi anche
Opzioni del compilatore MSVC
Sintassi della riga di comando del compilatore MSVC