offsetof
매크로 및 구조체 및 클래스에 대한 sizeof
연산자가 있습니다.
조회 할 수있는 비트 비트 필드 멤버의 및 비트 크기을 상쇄하도록 비트 필드 비슷한 기능을 얻을 수있는 방법이 있습니까?비트 필드에 대한 offsetof 및 sizeof와 같은 기능
sizeof
는 #define field_name_size n
을 사용하여 에뮬레이션,하지만 하나는 비트 필드의 모든 이전의 회원을 고려하여 몇 가지 복잡한 공식을 사용하는 것 같다부터 offsetof
위해 나는 그것이 #define field_name_offset
를 사용하기에 너무 복잡 될 것이라고 두려워 할 수있다.
어떤 경우에는 코드를 수동으로 비트 필드 정의와 동기화해야 할 필요가 없으므로 오류가 발생하기 쉽습니다.
한 예로 비트 필드의 멤버에 인터 로크 쓰기가 있는데, 컴파일러는이를 제공하지 않기 때문에 이러한 멤버에 쓰기 위해 사용자 지정 함수를 사용해야합니다.
또한 컴파일러가 비트 필드 레이아웃을 약간 다르게 구현할 수 있음을 이해합니다. 그러한 매크로/연산자를 사용할 수있게되면 해당 문제의 영향도 줄어 듭니다.
_ "비트 필드에 대해 비슷한 기능을 사용하여 비트 필드 멤버의 비트 오프셋 및 비트 크기를 쿼리 할 수 있습니까?"_ 저는 인식하지 못했습니다. –
무엇 @ @ πάνταῥεῖ는 –
라고 말합니다. @Cheers 그럼 우리는 적어도 두 개입니다 ;-) ... –