IPv4
#include <arpa/inet.h>
点分十进制数串(例如192.168.1.1) ===(转换)===> 32位网络字节序地址
int inet_aton(const char* strptr, struct in_addr *addrptr);
返回: 1----串有效
0----串有错
in_addr_t inet_addr(const char* strptr);
返回: 成功,32位二进制的网络字节序地址
失败,返回INADDR_NONE
32位网络字节序地址 ===(转换)===> 点分十进制数串
char *inet_ntoa(struct in_addr inaddr);
IPv4 & IPv6
#include <arpa/inet.h>
family为AF_INET/AF_INET6
点分十进制 ====> 网络字节地址
int inet_pton(int family, const char* strptr, void *addrptr);
返回: 1---成功
0---输入不是有效格式
-1--出错
网络字节地址 ====> 点分十进制
const char *inet_ntop(int family, const void *addrptr, char *strptr, size_t len);
返回: NULL 出错
本文 由 cococo点点 创作,采用 知识共享 署名-非商业性使用-相同方式共享 3.0 中国大陆 许可协议进行许可。欢迎转载,请注明出处:
转载自:cococo点点 http://www.cnblogs.com/coder2012
时间: 2024-11-01 00:53:45