나는 구조체 정의와 같은 :offsetof (member)가 sizeof (struct)와 같은 이유는 무엇입니까?
struct smth
{
char a;
int b[];
};
나는이 구조체에 sizeof
및 offsetof
전화 :
cout << sizeof(struct smth) << endl;
cout << offsetof(struct smth, b) << endl;
출력은 다음과 같습니다
4
4
와서 어떻게 할 때의 크기 stuct가 4이고 char이 1 바이트를 사용하면 int 배열의 오프셋은 4입니까? 왜 어떤 종류의 패딩이 있습니까? 또한, int 배열이 전혀 공간을 차지하지 않는 이유는 무엇입니까?
'offsetof (struct smth, b)'를 의미합니까, 맞습니까? –
@CarlNorum 예, 있습니다. 편집 됨. – bugra
C 또는 C++입니까? 그들은 다르다. –