Chapter 14. 공용체

공용체를 주로 메모리 절약 효과로 많이 알고 있지만

이러한 장점도 있지만 같은 메모리 공간을 여러 가지 자료형으로

사용함으로써 데이터형 변환이 쉽게되는 장점으로 인해 많이 사용한다.

즉, 한개의 메모리를 두개 이상의 자료형으로 정의 하여 사용 할 수 있다는 것을 의미 한다.

주로 임베디드분야에서 많이 이용되고 있다.

 

  1. typedef union _BYTE{ 
    1. unsigned char byte;
    2. struct _bit{
      1. unsigned char B1: 1;
      2. unsigned char B2: 1;
      3. unsigned char B3: 1;
      4. unsigned char B4: 1;
      5. unsigned char B5: 1;
      6. unsigned char B6: 1;
      7. unsigned char B7: 1;
      8. unsigned char B8: 1;
    3. } bit;
  2. } BYTE;

 

여기서 BYTE byteUnion; 에서 byteUnion.byte = 10; 을 하게되었을때

공용체 안에 bit구조체를 사용하여 byte변수에 저장된 10의 각 비트값을

확인해 볼수 있다.

 

PS : 구조체와 같이 메모리 할당을 하므로 통신이나 기타 크기를 구하는 함수를 사용할 때

실수를 하지 않기 위해서 "패킹"을 해주도록 한다!!

이 글은 스프링노트에서 작성되었습니다.

'책 정리 > 좋은 프로그래밍 습관' 카테고리의 다른 글

Chapter 16. 디버깅  (0) 2009.09.04
Chapter 15. 전처리기  (0) 2009.09.04
Chapter 13. 구조체  (0) 2009.09.04
Chapter 12. 함수 포인터  (0) 2009.09.04
Chapter 11. 포인터  (0) 2009.09.04

설정

트랙백

댓글