socket 主机地址相关的函数
#include <arpa/inet.h> int inet_aton (const char *name, struct in_addr *addr)
将ipv4地址从数字点的形式转化为二进制数据,存储在struct in_addr中。如果给的地址无效,返回0
uint32_t inet_addr (const char *name)
和inet_aton一样,将存储在字符串里的数字点形式的IPv4地址转化为二进制数据。输入地址无效会返回INADDR_NONE,实际值为255.255.255.255
uint32_t inet_network (const char *name)
将数字点形式的Ipv4地址按主机字节顺序转化使用网络地址????
char * inet_ntoa (struct in_addr addr)
和上面相反:struct in_addr 到数字点形式的IPv4地址。
struct in_addr inet_makeaddr (uint32_t net, uint32_t local) //使用网络号和主机号构成IPv4地址。对无类型的地址不起作用。
uint32_t inet_netof (struct in_addr addr) //返回IPv4地址的网络号
int inet_pton (int af, const char *cp, void *buf) //将Internet 地址(IPv4或者IPv6)从可表示(textual) 转换到网络上的二进制格式 //af 指address_family,值必须是AF_INET或AF_INET6。 //cp 指向输入字符串,buf为输出。调者必须保证buf足够大。大小应该为struct in_addr 或者struct in6_addr
const char * inet_ntop (int af, const void *cp, char *buf, socklen_t len) //和上一个函数功能相反。socklen_t len为buffer的长度。两个返回值出口:char *buf和return返回的buf的地址。