#pragma pack Struct test { Char a; //1byte Int b; //4byte }test; (short = 2byte) 구조체 test의 크기는 ? = 8 byte 구조체의 크기 할당에는 크기가 가장 큰 자료 형을 기준으로 배수만큼 커진다. test에서는 char (1byte ) + int (4byte) = 총 5바이트가 필요하므로 8 바이트가 할당된다 ->> 이유는 CPU가 접근하기 쉬운 위치에 필드를 배치하기 위함이다 이 과정에서는 3 byte의 메모리 낭비가 발생한다 #pragma pack(push, n) // n은 정렬할 크기 1, 2, 4, 8, 16만 유효, 디폴트 8 #pragma pack(pop) // pragma pack(push, n)해제