더북(TheBook)

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",
};
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.