/Zp (Yapı Üyesi Hizalama)
Bir yapının üyelerinin belleğe nasıl paketlendiğini denetler ve modüldeki tüm yapılar için aynı paketlemeyi belirtir.
Sözdizimi
/Zp
[1
16
|||8
|2
4
]
Açıklamalar
/ZpN
seçeneği, derleyiciye her yapı üyesinin depolandığı yeri bildirir. Derleyici, üye türünün boyutunun küçük olduğu bir sınırda veya N bayt sınırında birinciden sonra üyeleri depolar.
Kullanılabilir paketleme değerleri aşağıdaki tabloda açıklanmıştır:
/Zp bağımsız değişkeni | Etki |
---|---|
1 | Yapıları 1 baytlık sınırlarda paketler. ile /Zp aynı. |
2 | Yapıları 2 baytlık sınırlarda paketler. |
4 | Yapıları 4 baytlık sınırlarda paketler. |
8 | Yapıları 8 baytlık sınırlarda paketler (x86, ARM ve ARM64 için varsayılan). |
16 | Yapıları 16 baytlık sınırlarda paketler (x64 ve ARM64EC için varsayılan). |
Belirli hizalama gereksinimleriniz olmadığı sürece bu seçeneği kullanmayın.
Uyarı
Windows SDK'daki C/C++ üst bilgileri, platformun varsayılan hizalamasının kullanıldığını varsayar. Komut satırında veya kullanarak /Zp
#pragma pack
Windows SDK üst bilgilerini eklediğinizde varsayılan ayarı değiştirmeyin. Aksi takdirde, uygulamanız çalışma zamanında bellek bozulmasına neden olabilir.
Yapı paketlemesini pack
denetlemek için pragma da kullanabilirsiniz. Hizalama hakkında daha fazla bilgi için bkz.
Bu derleyici seçeneğini Visual Studio geliştirme ortamında ayarlamak için
Projenin Özellik Sayfaları iletişim kutusunu açın. Ayrıntılar için bkz . Visual Studio'da C++ derleyicisi ve derleme özelliklerini ayarlama.
Yapılandırma Özellikleri>C/C++>Kod Oluşturma özellik sayfasını seçin.
Yapı Üyesi Hizalama özelliğini değiştirin.
Bu derleyici seçeneğini program üzerinden ayarlamak için
- Bkz. StructMemberAlignment.
Ayrıca bkz.
MSVC Derleyicisi Seçenekleri
MSVC Derleyicisi Komut Satırı Söz Dizimi