union数据结构的巧用-判断机器字节序

来源:互联网 发布:js.com 编辑:程序博客网 时间:2024/05/01 11:58
#include <stdio.h>void byteorder(){    union    {        short value;        char union_bytes[sizeof(short)];    } test;    test.value = 0x0102;    if((test.union_bytes[0] == 1)&&(test.union_bytes[1] == 2))    {        printf("big endian\n");    }    else if((test.union_bytes[0] == 2)&&(test.union_bytes[1] == 1))    {        printf("little endian\n");    }    else        printf("unknown...\n");}int main(){    byteorder();    return 0;}