大端字节序存储:当一个数据的低字节数据存放在高地址处,高字节序存放在低地址处,这种存储方式就是大端字节序存储。
小端字节序存储:当一个数据的低字节数据存放在低地址处,高字节序存放在高地址处,这种存储方式就是小端字节序存储。
基本解法#include函数精简后:int check_sys() { int a = 1; char* p = (char*)&a; //原来的&a是int*类型,需要强制转换为char* if (1 == *p) return 1; //小端 else return 0; //大端 } int main() { int ret = check_sys(); //返回1是小端,返回0是大端 if (1 == ret) printf("小端n"); else printf("大端n"); return 0; }
int check_sys()
{
int a = 1;
return *(char*)&a;
}
函数结构变换:
int check_sys()
{
union
{
int i;
char c;
}un;
un.i = 1;
return un.c;
}



