제가 예를들어
union U {
float dx;
int ix;
char byte[4];
};
이렇게 공용체를 짰다고 치면요. 3 요소 모두 4바이트니까 같은 비트를 참조해서
dx로 실수값을 받고, 그걸 16진수로 ix에서 열람해서, 필요한 바이트를 byte 배열로 참조해서 수정할 수 있잖아여?
여기서 궁금한건 왜 byte는 엔디안 순서가 바뀌듯이 바이트 참조 순서가 뒤바뀌는 건가요?
그러니까 가령 ix가 0xFFAADDCC 라면 byte[0] = FF , [1] = AA , [2] = DD , [3] =CC 가 아니라
byte[3] = FF, [1] = AA, 이런식으로 반대로 된다는 거죠
구글링해봐도 공용체 자체에 대한 설명만 있지 이것에 대한 설명은 없네여
모르조 언냐 콤파일러 맘대로 하는거쥬