
[C/C++ Tip] 5. 구조체 패딩의 필요성
·
🔷 C언어 30강
구조체 패딩은 컴퓨터 메모리에서 데이터를 효율적으로 접근하기 위해 사용되는 개념이다. 컴퓨터 아키텍처 대부분은 특정 데이터 타입을 메모리의 정렬된 주소에서 읽고 쓰는 것을 선호한다. 예를 들어, 많은 시스템에서는 4바이트 정수(int)를 4바이트 경계에서 시작하는 메모리 주소에서 접근하는 것이 더 빠르다. 이러한 정렬 요구 사항을 충족시키기 위해 컴파일러는 구조체 내의 필드 사이에 "패딩" 바이트를 추가하여 메모리 접근 속도를 최적화한다.⭐1. 구조체 패딩의 필요성1.1.메모리 접근 속도 최적화: 데이터를 그들의 자연 정렬 경계에 맞춰 저장함으로써, CPU는 메모리에서 데이터를 더 빠르게 읽고 쓸 수 있다.1.2.플랫폼 호환성: 다양한 플랫폼과 아키텍처에서 코드의 동작을 일관되게 유지한다.⭐2. 패딩이 ..