CS Study/C++

[C++] [6] 구조체 (struct)

23학번이수현 2024. 12. 20. 02:32

0. Intro

- 지금까지의 변수에 데이터를 저장할 때 우리는 항상 같은 데이터 타입이였던 아이들만 저장을 하였다.

- 이번엔 struct 즉, 구조체를 이용하여 여러가지 형식의 데이터를 하나의 매개변수로 전달하는 방법에 대해서 알아보자.

 

1. 구조체 (struct)

- 구조체가 무엇인지 자세히 알아가보자.

- 예를 들어 책에 대한 정보를 코드로 표현하고 싶다고 가정하자.

 

std::string name;
int page;
std::string color;
float width;
float height;

 

- 총 5개의 매개변수가 필요하게 되는데, 이것을 하나로 묶어서 book이라는 구조체를 선언해보자.(struct를 이용하여)

struct Book{
    std::string name;
    int page;
    std::string color;
    float width;
    float height;
}

 

- 이렇게 되면 Book이라는 새로운 data type이 생긴거라고 생각하면 된다.

- 이러한 구조체 형식의 변수를 만드는 방법은 다음과 같다.

Book WhiteSnow;

 

- 이제 WhiteSnow라는 구조체 안의 개별적인 멤버에 접근하기 위해선 멤버 선택 연산자인 "."을 사용하면 된다.

- 예시를 보면 이해가 쉬울 것이다.

WhiteSnow.name = "White Snow";
WhiteSnow.page = 124;
WhiteSnow.color = 'Red';
WhiteSnow.width = 20;
WhiteSnow.height = 30;

 

- 한번에 다음과 같이 선언도 가능하다.

Book WhiteSnow = {"White Snow",124,"Red",20,30}