본문 바로가기
C++/구조체

[C++] 구조체 배열이란 무엇인가

by bigpicture 2022. 8. 17.
반응형

아래와 같은 구조체가 있다고 합시다. 

struct person
{
    char name[20];
    char sex;
    int age;
    char job[20];
    float height;
    float weight;
};


헬스장 회원의 개인 정보를 담기 위해 만든 구조체입니다. 숫자나 문자를 하나씩 변수에 담아 사용할 때보다는 훨씬 편합니다. 하지만 회원이 수백명인 경우에 구조체를 수백개 선언하는 것이 힘이 듭니다. 또한 회원들을 몇개의 그룹으로 묶어서 관리하고 싶습니다. 이러한 기능을 구현할 방법이 없을까라는 고민에서 구조체 배열이 고안되었습니다. 

 

구조체 배열 정의하기

구조체를 배열형태로 정의하면 수백개의 구조체도 하나의 선언으로 만들어낼 수 있습니다. 

회원 세명의 구조체를 선언하면 아래와 같습니다. 

struct person memb[3];


초기화도 한번에 가능합니다. 

struct person memb[3]={
  {"김지영",'F',23,"학생",164,56},
  {"노성지",'F',35,"회사원",158,68},
  {"홍우연",'F',27,"회사원",167,58},
};


구조체 배열 맴버 접근

맴버에 접근하는 방법을 알아봅시다. 몇가지 예시를 통해 설명할 것입니다. 노성지라는 이름에 접근하는 방법은 아래와 같습니다. 

memb[1].name


meme[1] 은 {"노성지",'F',35,"회사원",158,68} 입니다. 맴버 중 노성지라는 이름은 name 이므로 위와 같이 접근하면 됩니다. 

홍우연의 직업에는 아래와 같이 접근합니다. 

memb[2].job



반응형

'C++ > 구조체' 카테고리의 다른 글

[C++] 구조체 안에 함수 정의하기  (0) 2022.08.18
[C++] 구조체란 무엇인가  (0) 2022.08.16

댓글