【C基础】大/小端字节序存储问题,如何检测机器是大端还是小端?
1、什么是机器的大小端
大小端字节序:描述每个字节存放顺序:大/小端字节序存储模式
大端:数据的低位保存在内存的高地址处
小端:数据的低位保存在内存的低地址处
图:
2、如何检测机器的大小端
2.1 按位与检查大小端
int Check_sys1()
{
int a=1;
return (*(char*)&a); //返回1小端,返回0大端
}
2.2 联合体检查大小端
int Cheack_sys2()
{
union un
{
char a;
int b;
}U;
U.b=1;
return U.a; //返回1小端,返回0大端
}