首页 > 代码库 > 网络编程中的大端和小端

网络编程中的大端和小端

将低序字节存储在内存的起始地址,这称为小端字节序。

将高序字节存储在内存的起始地址,这称为大端字节序。

检查大小端字节序的简单代码如下:

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("big-endian\n");
        else if (un.c[0] == 2 && un.c[1] == 1)
            printf("little-endian\n");
        else
            printf("unknown\n");
     }

     else
       printf("sizeof(short) = %d\n", sizeof(short));

       exit(0);
}

 

网络编程中的大端和小端