UNIX提供各种功能调用,这将有助于操纵IP地址。这些函数将ASCII字符串和网络字节有序的互联网地址的二进制值(值存储在套接字地址结构)。
有以下三个函数调用用于IPv4寻址:
	(1) int inet_aton(const char *strptr, struct in_addr *addrptr):
	此函数调用指定的字符串转换,在互联网标准点标记,一个网络地址,并存储的地址提供的结构。转换后的地址将是网络字节顺序(字节下令从左至右)。这将返回1,如果字符串是有效的和错误0。
以下是使用示例:
| 
#include <arpa/inet.h>
(...)
    int retval;
    struct in_addr addrptr
    
    memset(&addrptr, '\0', sizeof(addrptr));
    retval = inet_aton("68.178.157.132", &addrptr); 
(...)
 | 
	(2) in_addr_t inet_addr(const char *strptr):
	此函数调用指定的字符串转换,在互联网标准点标记,一个整数值,适合用作互联网地址。转换后的地址将是网络字节顺序(字节下令从左至右)。这将返回一个32位二进制的网络字节命令IPv4地址和INADDR_NONE的错误。
以下是使用示例:
| 
#include <arpa/inet.h>
(...)
    struct sockaddr_in dest;
    memset(&dest, '\0', sizeof(dest));
    dest.sin_addr.s_addr = inet_addr("68.178.157.132"); 
(...)
 | 
	(3) char *inet_ntoa(struct in_addr inaddr):
	此函数调用指定Internet主机的地址转换为一个字符串在互联网标准点标记。
以下是使用示例:
| 
#include <arpa/inet.h>
(...)
	char *ip;
	ip=inet_ntoa(dest.sin_addr);
	printf("IP Address is: %s\n",ip);
(...) | 
						上一篇:
								Socket 网络字节顺序
												下一篇:
								Socket 核心函数
												
						
						
					
					
					