6.3 구조체

    지금까지 본 것처럼 배열은 기본 타입으로 된 오브젝트 여러 개를 거대한 오브젝트 하나로 묶는 것이다. 첫 번째부터 마지막까지 순서를 정할 필요가 있다면 배열로 묶는 것이 좋다. 하지만 순서가 중요하지 않거나 원소의 타입이 서로 다르다면 구조체(structure)를 사용한다. 구조체는 struct란 키워드로 정의한다.

    첫 번째 예로 5.6.2절에서 본 까마귀 예를 다시 살펴보자. 이 예에서는 열거 타입(enumeration type)을 이용하여 배열의 각 원소를 이름으로 접근했다. C 언어의 구조체는 각 원소(멤버(member) 또는 필드(field))를 보다 체계적으로 묶는 기능을 제공한다.

    struct birdStruct {
      char const* jay;
      char const* magpie;
      char const* raven;
      char const* chough;
    };
    struct birdStruct const aName = {
      .chough = "Henry",
      .raven = "Lissy",
      .magpie = "Frau",
      .jay = "Joe",
    };
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.