//#include<stdio.h>
#include "unp.h"
//判断机器的大小端模式
int main(int argc,char **argv[])
{
union
{
short s;
char c[sizeof(short)];
}un;
un.s = 0x0102;
printf("%s:",CPU_VENDOR_OS);
if(sizeof(short) == 2)
{
if(un.c[0] == 1 && un.c[1] == 2)
printf("大端模式\n");
else if(un.c[0] == 2 && un.c[1] == 1)
printf("小端模式\n");
else
printf("unknow\n");
}
return 0;
#include "unp.h"
//判断机器的大小端模式
int main(int argc,char **argv[])
{
union
{
short s;
char c[sizeof(short)];
}un;
un.s = 0x0102;
printf("%s:",CPU_VENDOR_OS);
if(sizeof(short) == 2)
{
if(un.c[0] == 1 && un.c[1] == 2)
printf("大端模式\n");
else if(un.c[0] == 2 && un.c[1] == 1)
printf("小端模式\n");
else
printf("unknow\n");
}
return 0;
}
根据共用体的特性,我们可以对此做一个简单的判断。