문제
C에서 멤버가 없는 구조체를 선언할 수 있습니까? 그렇다면 해당 구조체의 크기는 어떻게 될까요?
해결책
예, C 프로그래밍 언어에서는 멤버가 없는 구조체를 선언할 수 있으며 이 경우 멤버가 없는 구조체의 크기는 0(0)이 됩니다. 크기가 0인 구조가 됩니다.
예시
#include <stdio.h>
//structure with no members
struct temp{
};
int main(){
//declaring structure variable
struct temp T;
printf("Size of T: %d\n",sizeof(T));
return 0;
} 출력
이 C 프로그램에서는 변수를 선언하지 않고 "temp"라는 구조를 선언하므로 "temp"는 멤버가 없는 구조입니다.
그런 다음 변수 "T"(구조 변수)를 선언하고 sizeof() 연산자를 사용하여 "T"가 차지하는 크기를 인쇄하고 결과는 "0"입니다.
Size of T: 0