문제
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