검색결과 리스트
글
<공용체>
공용체는 구조체의 개념에서 모두 같지만 딱 하나... 메모리를 공유한다는 점과 차이점이 있다.
공용체도 변수들을 묶어 하나의 구조체 처럼 사용한다. 하지만 이 공용체는 변수의 메모리 공간을 공유한다.
예를 들면
struct abc
{
char a;
int b;
double c;
};
union abc
{
char a;
int b;
double c;
};
이렇게 있다고 가정하자. 각각의 의미를 그림으로 표현해보면...
공용체와 구조체는 접근방법과 문법도 거의 동일하다.
<실습>
-결과-
위에 공용체와 구조체의 문법을 보면 거의 동일한 것을 알 수 있다.
sizeof를 이용해서 union ab와 struct xy를 찍어냈다. 결과는 각각 4 8이다.
이렇듯이 메모리 공간을 공유하는 것을 알 수 있다.
그렇다면 union에 있는 멤버 변수 b를 20으로 바꾼다면? 당연히 a도 바뀔것이다.
'Programming > C' 카테고리의 다른 글
C언어 - strlen()함수 (0) | 2016.06.12 |
---|---|
C언어 - gets(), puts()함수 (0) | 2016.06.11 |
C언어 - 구조체와 함수 (0) | 2016.06.09 |
C언어 - 자기참조 구조체, 외부참조 구조체 (0) | 2016.06.08 |
C언어 - 구조체와 포인터 (0) | 2016.06.07 |
RECENT COMMENT