반응형
공용체(Union)란?
공용체는 여러개의 멤버변수가 같은 메모리 영역을 공유하는 데이터 구조이다.
구조체와 유사하지만 다른점은 멤버들이 메모리를 공유한다는 차이가 있다.
공용체 멤버변수들은 메모리 공간을 공유하기에 한 번에 하나의 멤버만 사용할 수 있다.
멤버 중 어느 하나 값을 할당하면, 다른 멤버들의 값은 유효하지 않게 된다.
공용체(Union) 선언
공용체(Union)의 선언 방식은 구조체와 같다.
키워드만 struct대신에 union을 쓰면된다.
typedef union ubox
{
int num1;
int num2;
double num3;
}UBox;
공용체를 사용한 이유
예전에는 하드웨어 발전이 느려서 메모리 공간이 부족했다.
공용체는 다양한 형식의 데이터를 동일한 메모리 공간에서 사용할 때 유용하다.
그래서 메모리 공간을 절약하기 위해 공용체를 사용하였는데,
현재는 하드웨어의 발전에 의해서 메모리 공간이 다소 충분해져서
공용체는 점차 사용되지 않고 있는 추세입니다.
반응형
반응형
'C' 카테고리의 다른 글
열거형 (0) | 2023.05.23 |
---|---|
파일 입출력 (0) | 2023.05.23 |
구조체 변수 연산, 초기화 (0) | 2023.05.23 |
구조체 변수 전달과 반환 (0) | 2023.05.23 |
구조체 typedef 선언 (1) | 2023.05.23 |