小端存储:低位放到低地址处,高位放到高地址处;
大端存储:低位放到高地址处,高位放到低地址处;
方法一:强制类型转换
#include <stdio.h>
int check_sys()
{
int a = 1;
return *(char*)&a; // 这里是取地址
}
int main()
{
int ret = check_sys();
if (ret == 1)
{
printf("小端\n");
}
else
{
printf("大端\n");
}
return 0;
}
方法二:联合体(共用体)
#include <stdio.h>
int check_sys()
{
union Un
{
int a;
char b;
}un;
un.a = 1;
return un.b;
}
int main()
{
int ret = check_sys();
if (ret == 1)
{
printf("小端\n");
}
else
{
printf("大端\n");
}
return 0;
}