본문 바로가기
서적 정리/C++ 기초 플러스

20.변수형의 조합

by 민돌이2 2022. 8. 9.

배열, 구조체, 포인터를 조합하여 사용할 수 있다.

struct YearsEnd
{
	int year;
	int end;
};

위 구조체가 있을 때 아래와 같이 생성할 수 있다. 또한 도트 연산자를 사용하여 멤버에 접근할 수 있다.

YearsEnd s01, s02, s03;

s01.year = 1998;
s01.end = 2007;

 

이러한 구조체에 대한 포인터를 생성할 수 있다.

YearsEnd* pa = &s02;

포인터가 유효한 주소를 가리킬 경우, 화살표 연산자를 사용하여 멤버에 접근할 수 있다.

pa->year = 1999;

 

구조체들의 배열을 생성할 수 있다. 또한 도트 연산자를 사용하여 원소의 멤버에 접근할 수 있다.

YearsEnd trio[3];

trio[0].year = 2003;

trio는 배열이고, 배열의 이름은 포인터를 나타이므로, 화살표 멤버 연산자를 사용할 수 있다.

(tior+1)->year = 2004; //trio[1].year = 2400;와 동일하다.

 

포인터 배열을 생성할 수 있다.

const YearsEnd* arp[3] = { &s01, &s02, &s03 };

이 배열의 데이터에 접근하기 위해선 화살표 멤버 연산자를 사용해야 한다.

std::cout << arp[1]->year << std::endl;
728x90

'서적 정리 > C++ 기초 플러스' 카테고리의 다른 글

22.for 루프  (0) 2022.09.13
21.배열의 대안  (0) 2022.08.09
19.포인터, 배열, 포인터 연산  (0) 2022.08.09
18.포인터와 메모리 해제  (0) 2022.08.03
17.열거체(enumeration)  (0) 2022.08.03
16.공용체(union)  (0) 2022.08.03
15.구조체(struct)  (0) 2022.08.03
14.string 클래스  (0) 2022.07.29

댓글