inet_addr和inet_addr的用法
inet_addr函数将点分十进制的的字符串转换为32位网络字节序的IP信息。
in_addr_t inet_addr(__const char * __cp)
inet_network函数将点分十进制的的字符串转换为32位主机字节序的IP信息。
in_addr_t inet_network(__const char * __cp)
inet_ntoa将32位的网络字节顺序的IP信息转换成点分是进制的字符串方式。
```c
在这里插入代码片
```#include <arpa/inet.h>
#include <netinet/in.h>
#include<stdio.h>
#include<string.h>
#include<sys/socket.h>
int main(void)
{
in_addr_t net;
struct in_addr net_addr, ret;
net = inet_addr("192.168.68.128");
net_addr.s_addr = net;
printf("inet_addr(\"192.168.68.128\")=0x%x\n", net);
printf("inet_network(\"192.168.68.128\")=0x%x\n", inet_network("192.168.68.128"));
printf("inet_ntoa(net)=%s\n", inet_ntoa(net_addr));
inet_aton("192.168.68.128", &ret);
printf("test inet_aton, inet_ntoa(ret)=%s\n",inet_ntoa(ret));
return 0;
}
/*
inet_addr("192.168.68.128")=0x8044a8c0
inet_network("192.168.68.128")=0xc0a84480
inet_ntoa(net)=192.168.68.128
test inet_aton, inet_ntoa(ret)=192.168.68.128
*/