3. 복합 데이터형(5) - 공용체

WanJu Kim·2022년 10월 17일
0

C++

목록 보기
11/81

구조체와 비슷한 것이 공용체가 있다. 공용체는 서로 다른 데이터형 중에서 한 가지만 보관할 수 있다. 다음을 보자.

	union wallet
	{
		short card;
		int picture;
		double money;
	};

	wallet mine;
	mine.picture = 2;
	mine.money = 99999.9f;

각각 멤버에 넣을 때 디버깅을 통해 구조체 안에 어떤 변수가 들어갔는지 확인해보자.

멤버 중 picture 값을 대입했을 경우에는 picture에 값이 잘 들어가있고 나머지는 쓰레기값이 들어가있다.

그 다음에 money 값을 대입했을 때는, 이전에 넣었던 picture값이 사라졌다.

union의 장점은 한 가지의 데이터만 저장하기 때문에 메모리를 절약할 수 있다. 제일 큰 데이터형의 크기만큼만 차지하면 된다. 위의 코드의 경우에는 double이 제일 크므로, 8만큼 차지한다.

profile
Question, Think, Select

0개의 댓글