728x90 반응형 padding #packing #bit fields1 C :: padding / packing / bit fields 개발의 규모가 커지거나, 정확한 사이즈로 특정 영역을 관리해야 할 때, padding / packing / bit fields 지정 등을 주로 사용 한다. padding struct foobar { int a; // 4 byte char b; // 1 byte } 위 코드의 사이즈는 8 byte 이다. architecture 에 따라 다르나, 일반적으로 word 단위의 memory alignment 로 처리되며, 이러한 사이즈를 컴파일러 수준에서 맞추어 주는 작업을 structure padding 이라 한다. 간략하게 정리하면 아무것도 안하면, 그냥 다 alignment 에 맞게 padding 된다. #pragma pack() attribute packed struct foobar { int a; // .. 2023. 4. 20. 이전 1 다음 728x90 반응형