Macros

给我一支烟!请所有烦恼都能过往如云烟!

导航

测试本地是在socket网络传送过程中是否为大端/小端

int main()
{
    typedef union
    {
        short s;
        char c[2];
    }uOrdertest;
   
    uOrdertest test;
   
    test.s = 0x0102;
   
    if(test.c[0] == 0x01)
    {
     printf("大端\n");
    }
   
    if(test.c[0] == 0x02)
    {
     printf("小端\n");
    }
   
    return 0;
}

然后:
>gcc ordertest.c -o ordertest
> ./ordertes

注:
在一个分配的内存块中:
大端:
         高位             低位
|————————————|   -------------->入口方面
|           01     |     02               |   --------------->内存地址增长方面
——————————————

小端:
         高位             低位
|————————————|           -------------->入口方面
|           02    |     01                |       <------------------内存地址增长方面
——————————————
入口方面相同。

posted on 2007-06-29 18:23  Macros  阅读(367)  评论(0)    收藏  举报