一、关于联合体的说明
联合体的出现是为了节省内存空间;联合体分配的内存大小是其成员变量中最大变量的大小,而不像结构体是各个成员变量内存的总和。
利用联合体成员变量共用内存的特点,我们可以判断处理器的大小端模式。
二、demo
1.源码
test.c
#include <stdio.h>
int checkSystem()
{
union check{
int i;
char ch;
} c;
c.i = 1;
return (c.ch ==1);
}
int main()
{
int i;
i = checkSystem();
if(!i) printf("大端模式\n");
else printf("小端模式\n");
return 0;
}
2.编译
gcc test.c -o test
3.在我的主机上运行
./test
小端模式
结论:intel CPU是小端模式。