구글링에서 못 찾아서 질문을 남겨봅니다.
어찌보면 참 쉬운 내용인데 이러한 문법이 존재하는지 몰라서 질문을 남겨봅니다.
C언어 union 관련에서
4바이트에서 각각 상위 2바이트 하위 2바이트를 양의 정수로 출력하는 것을 하고자 했을 때
typedef struct dbshort
{
unsigned short upper;
unsigned short lower;
} DBshort;
typedef union rdbuf
{
int iBuf;
char bBuf[4];
DBshort sBuf;
} RDBuf;
라고 해서
결론적으로
RDBuf buf;라는 변수를 만들고
buf.sBuf.upper
buf.sBuf.lower를 통해서
각각 상위 하위를 구분해서 출력하는데요
저 상태가 struct라서 2바이트 2개가 묶여있어서 각각 상위 하위 2바이트씩 차지하는건가요?
만약 union에서 short형을 2개 한다면 같은 값이 나오겠죠?