将看到字节序的不同。
#include <stdio.h>
main()
{
int i;
char *c;
i = 2139127808;
c=(char*)&i;
if (c[0] == 0 && c[3] == 127)
printf("小端字节序处理器\n");
else if (c[0] == 127 && c[3] == 0)
printf("大端字节序处理器\n");
}
TCP/IP协议栈采用大端字节序,所以应用程序有时需要在处理器字节序与网络字节序之间转换。
对于TCP/IP应用程序,提供了四个通用函数实施处理器字节序和网络字节序之间的转换
#include <arpa/inet.h> uint32_t htonl(uint32_t hostlong); 返回值:以网络字节序表示的32位整型数 uint16_t htons(uint16_t hostshort); 返回值:以网络字节序表示的16位整型数 uint32_t ntohl(uint32_t netlong); 返回值:以主机字节序表示的32位整型数 uint16_t ntohs(uint16_t netshort); 返回值:以主机字节序表示的32位整型数
原文:http://blog.csdn.net/aspnet_lyc/article/details/21160933