0
가능한 중복 :
offsetof at compile time는 구조체 내부의 멤버 변수의 오프셋 (offset)
가 어떻게이 C에서 구조체 내의 멤버의 오프셋 (offset)에서 찾을 수 있습니까? 예를 들어, 내가 어떻게이 구조체에 t
의 오프셋을 찾을 수 있습니다
struct test
{
int a;
int b;
struct test* t;
int c;
};
#DEFINE offset_of (TYPE, MEMBER) ((size_t로) ((TYPE *) 0) -> 회원) 그것은 널 포인터를 역 참조처럼 보인다. 오프셋을 찾는 데 어떻게 도움이됩니까? – Prabagaran
하지만 외부 '&'(주소) 연산자는 비 참조를 효과적으로 "취소"합니다. 전체 표현식은 "메모리 위치 0에 TYPE 인스턴스가 있다면 어떤 주소가 될 것입니까?"라고 묻습니다. – cdhowie