c, cpp

구조체 비트 필드 (struct bit field)

blackbearwow 2024. 3. 3. 19:07

평소에는 바이트단위만 사용하지만, 저수준 프로그래밍을 할 때는 비트 단위로 값을 가져오거나 저장해야 하는 상황이 있다.

이때 구조체 비트 필드를 사용하면 유용하다.

비트필드는 다음과 같이 선언한다.

struct 구조체이름 {
    정수자료형 멤버이름 : 비트수;
};

 

다음은 <linux/ip.h>의 iphdr구조체이다. 보면 unsigned char ihl:4, version:4;라고 되어있다. 각각 4비트씩 저장공간을 가지는 것이다.

iphdr 구조체의 일부분

 

 

참고: https://dojang.io/mod/page/view.php?id=472

'c, cpp' 카테고리의 다른 글

C++ Standard Template Library(STL)  (0) 2024.07.02
C언어 자료형 종류(C data types)  (0) 2024.06.19
C언어 연산자 우선순위(Operator Precedence in C)  (0) 2024.06.19
C언어의 기본 문법  (0) 2024.06.19
C언어의 이해  (0) 2024.05.27