'공용체 union'에 해당되는 글 1건

  1. 2013.02.15 공용체 union

공용체 union

Programming/C 2013. 2. 15. 01:19 |

#include<stdio.h>

 

union u_data //공용체 정의.
{
        int d1;
        double d2;
        char d3;
};

 

main()
{
        union u_data data; //공용체 변수 선언.

 

        data.d2=3.14; //이렇게 초기화를 하면 나머지 d1, d3는 아무 의미없는 값을 지니게 된다.
        printf("%d, %lf, %c \n", data.d1, data.d2, data.d3);

 

        data.d1=5;
        printf("%d, %lf, %c \n", data.d1, data.d2, data.d3);

 

        data.d3='a';
        printf("%d, %lf, %c \n", data.d1, data.d2, data.d3);

 

        return 0;
}

 

구조체와의 차이점은, 구조체 멤버는 모두 메모리 공간에 각각 할당되지만, 

공용체 멤버는 멤버중 가장 메모리를 많이 차지하는 멤버에 초점을 둬서 

메모리를 할당한다.

그래서 공용체는 공유한다는 뜻으로 공용체라 한다.

 

공용체는 일반적인 프로그래밍에서는 사용빈도가 낮고 하드웨어 프로그래밍에서 

사용빈도가 높다고 한다.

 

Posted by scii
: