怎么判断机器的大小端
大小端介绍
大端(存储)模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中
小端(存储)模式,是指数据的低位保存在内存的低地址中,而数据的高位,,保存在内存的高地址中
图中的变量地址是倒着存的,所以可以判断是小端存储
怎么判断大小端
方法一:
#include<stdio.h>
#include<stdlib.h>
int check_sys()//强制类型转换为char类型,如果输出1就是小端,否则是大端
{
int a = 1;
//返回1表示小端
//返回0表示大端
return (*(char*)&a);
}
int main()
{
if(1 == check_sys())
{
printf("小端\n");
}
else
{
printf("大端\n");
}
system("pause");
return 0;
}
方法二:
#include<stdio.h>
#include<stdlib.h>
int check_sys()//使用联合体访问他们共同的地址部分
{
union Un
{
char c;
int i;
}u;
u.i = 1;
return u.c;
}
int main()
{
if(1 == check_sys())
{
printf("小端\n");
}
else
{
printf("大端\n");
}
system("pause");
return 0;
}