#include <arpa/inet.h>
uint16_t htons(uint16_t hostshort);
htons的功能:将一个无符号短整型数值转换为网络
字节序,即
大端模式(big-endian)
参数u_short hostshort: 16位
无符号整数
返回值:TCP / IP网络
字节顺序.
htons 是把你机器上的整数转换成“网络字节序”, 网络字节序是 big-endian,也就是整数的高位字节存放在内存的低地址处。 而我们常用的 x86 CPU (intel, AMD) 电脑是 little-endian,也就是整数的低位
字节放在内存的低字节处。举个例子吧。假定你的port是
0x1234,
在网络字节序里 这个port放到内存中就应该显示成
addr addr+1
0x12 0x34
而在x86电脑上,0x1234放到内存中实际是:
addr addr+1
0x34 0x12
htons 的用处就是把实际内存中的整数存放方式调整成“网络字节序”的方式。
htons
最新推荐文章于 2023-09-25 21:07:41 发布