刚刚写了一个判断机器字节序的程序:
/*
* FileName: byteorder.c
* 用途:用来测试机器的字节序
*/
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
union {
short s;
char c[sizeof(short)];
} un;
un.s = 0x0102;
if (un.c[0] == 1 && un.c[1] == 2){
printf("Big-Endian\n");
}
if (un.c[0] == 2 && un.c[1] == 1){
printf("Little-Endian\n");
}
exit(0);
}