网络编程之字节序转换API

ip字符串转换网络字节序

1
2
int inet_aton(const char *cp, struct in_addr *inp);     [addr to network]
功能:将cp指向的IP字符串转成网络字节inp保存的地址中

网络字节序转换IP字符串

1
2
3
4
5
6
7
char *inet_ntoa(struct in_addr in);   [network to addr]
功能将IP网络字节序转换成IP字符串
参数:
@in IP网络字节序

返回值:
成功返回IP字符串首地址失败返回NULL

主机字节序转换为网络字节序

1
2
3
4
5
short htons(short data);        [host  to network short ]
功能short类型的整数转成网络字节序
参数
@data 序号转换的整数
返回值得到的网络字节序

网络字节序转换为十进制数

1
2
3
4
5
6
7
8
9
10
11
12
13
int  atoi(const char *nptr)
功能把ntpr 所指向的整数字符串转换成整数
参数
@ nptr 字符串
返回值成功返回转换后的整数
失败返回0
注意若是只有+-和整数字符能转换其他字符返回0

uint32_t ntohs(uint32_t netlong); [network to host short]
功能把网络字节序转换为主机端口
参数
@ netlong 网络字节序
返回值 返回对应的主机端口