📚공용체의 정의

공용체는 하나의 자료를 여러 멤버가 공통적으로 사용하게 해주는 것이다. 즉, 동일한 기억장소에 여러 유형의 자료를 저장하기 위해 사용자가 선언한 자료형이다. 공용체는 멤버들이 완전히 다른 자료형의 값을 가질 때 기억공간을 절약하기 위해 사용된다.

1
2
3
4
5
6
7
8
union var           // 공용체 정의
{
    char a;
    int b;
    float c;
};

union var abc;      // 공용체 변수 선언



📚공용체의 사용

공용체 선언이 이뤄지면 멤버 중 자료의 크기가 가장 큰 멤버에 대해서만 기억공간이 할당되고 기억공간의 시작 위치부터 각 부분을 다른 멤버가 공용으로 사용한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>

union var
{
    char a;
    int b;
    double c;
};

void main()
{
    union var temp;         // 공용체 var의 크기는 멤버 중 가장 큰 자료인 double형(8byte)에 맞게 할당
    temp.a = 'a';           // 'a'이 저장되고 1byte만 사용
    temp.b = 10;            // 'a'이 지워지고 10이 저장됨. 4byte만 사용
    temp.c = 123.4567;      // 10이 지원지고 123.4567 저장됨. 8byte 사용
}



Tags: ,

Categories:

Updated:

Leave a comment