大端-小端对齐判定函数
大端-小端对齐判定方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| int main(int argc, char** argv) { (void)argc; (void)argv; union { short s; char c[sizeof(short)]; }un; un.s = 0x0102; if(sizeof(short)!=2) { printf("sizeof(short)=%d\n", sizeof(short)); } else { if(1== un.c[0] && 2==un.c[1]) { printf("Big end\n"); } else if(2==un.c[0] && 1==un.c[1]) { printf("Little end\n"); } else { printf("unknown \n"); } } return 0; }
|