主机字节序:cpu对内存进行存取数据的顺序
大小端取决于cpu的架构(x86架构的cpu都是小端)
字节序针对的是数据存储类型大于1字节的数据,而且不管是大端还是小端,cpu对内存进行存取数据的顺序都是从低地址到高地址。
同小异大
小端:低字节数据存储在低地址处,高字节数据存储在高地址处。
大端:高字节数据存储在低地址处,低字节数据存储在高地址处。
判断大小端
利用联合体判断大小端
union Un
{
int a;
char b;
} un;
int main()
{
un.a = 1;
if(un.b == 1)
//小端
else
//大端
return 0;
}
int i = 0x12345678;//0x12是高字节,而0x78是低字节。
char *cp = (char *)&i;
if(*cp == 0x78)
//小端
else
//大端
int i = 0x12345678;
if((char)a == 0x78)
//小端
else
//大端