socket编程为什么需要htonl(), ntohl(), ntohs(),htons() 函数-------转载
在C/C++写网络程序的时候,往往会遇到字节的网络顺序和主机顺序的问题。这是就可能用到htons(), ntohl(), ntohs(),htons()这4个函数。 网络字节顺序与本地字节顺序之间的转换函数: htonl()--"Host to Network Long" ntohl()--"Network to Host Long" htons()--"Host to Network Short" ntohs()--"Network to Host Short" 之所以需要这些函数是因为计算机数据表示存在两种字节顺序:NBO与HBO 网络字节顺序NBO(Network Byte Order): 主机字节顺序(HBO,Host Byte Order): int main() { printf("%d \n",htons(16)); return 0; } 得到的结果是4096,初一看感觉很怪。 包含的头文件为:"winsock2.h" 原文地址: http://blog.chinaunix.net/uid-21278406-id-444362.html 原文:https://www.cnblogs.com/6-6-8-8/p/9264944.html