다음을 통해 공유


/Zp(구조체 멤버 맞춤)

구조체의 멤버를 메모리에 압축하는 방법을 제어하고 모듈의 모든 구조에 대해 동일한 압축을 지정합니다.

구문

/Zp[116|||8|24]

설명

/ZpN 옵션은 각 구조체 멤버를 저장할 위치를 컴파일러에 알립니다. 컴파일러는 멤버 유형의 크기나 N바이트 경계 중 더 작은 경계에서 첫 번째 멤버 다음의 멤버를 저장합니다.

사용할 수 있는 압축 값은 다음 표에 설명되어 있습니다.

/Zp 인수 효과
1 1바이트 경계에서 구조체를 압축합니다. /Zp와 동일합니다.
2 2바이트 경계에서 구조체를 압축합니다.
4 4바이트 경계에서 구조체를 압축합니다.
8 8바이트 경계에서 구조체를 압축합니다(x86, ARM, ARM64의 경우 기본값).
16 16 바이트 경계(x64 및 ARM64EC 기본값)에 구조를 압축합니다.

특정 맞춤 요구 사항이 있는 경우가 아니면 이 옵션을 사용하지 마세요.

Warning

Windows SDK의 C/C++ 헤더는 플랫폼의 기본 맞춤이 사용된다고 가정합니다. 명령줄에서 /Zp를 사용하거나 #pragma pack을 사용하여 Windows SDK 헤더를 포함하는 경우 기본값에서 설정을 변경하지 마세요. 변경하는 경우 애플리케이션에서 런타임에 메모리 손상이 발생할 수 있습니다.

pack pragma를 사용하여 구조체 압축을 제어할 수도 있습니다. 정렬에 대한 자세한 내용은 다음을 참조하십시오.

Visual Studio 개발 환경에서 이 컴파일러 옵션을 설정하려면

  1. 프로젝트의 속성 페이지 대화 상자를 엽니다. 자세한 내용은 Visual Studio에서 C++ 컴파일러 및 빌드 속성 설정을 참조하세요.

  2. 구성 속성>C/C++>코드 생성 속성 페이지를 선택합니다.

  3. 구조체 멤버 맞춤 속성을 수정합니다.

프로그래밍 방식으로 이 컴파일러 옵션을 설정하려면

참고 항목

MSVC 컴파일러 옵션
MSVC 컴파일러 명령줄 구문