스트럭쳐로 변수를 생성해서 실행 코드에서 값을 대입하는데, 변수를 정의할 때 꼭 초기화를 해달라고 부탁을 받는 경우가 있습니다. 그렇다면 스트럭쳐 변수는 어떻게 초기화할까요?

방법은 간단합니다. 아래와 같이 중소 괄호를 묶으면 됩니다.

struct st_t {
   int  a:
   int  b;
   int  c;
};

   struct st_t  st = { 1, 2, 3};

   printf( "st.a=%d, st.b=%d, st.c=%d\n", st.a, st.b, st.c);

간단하지요? 여기서 요소 개수가 많아지면 해당 요소를 어떤 값으로 초기화 했는지 확인하기 어렵습니다.

struct st_t {
   int  a, b, c, ...... zz;
};

   struct st_t  st = { 5, 7, 8, 100, 289, 33, ......... 789};

   // st.z 는 무슨 값?

이럴 때는 요소 이름을 함께 사용하면 편합니다.

struct st_t {
   int  a, b, c, ...... zz;
};

   struct st_t  st = { z:100};

   // st.z 는 100