반응형
공용체(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

+ Recent posts