通过这种方式,我们可以轻松地处理inet_pton和inet_ntop函数的错误,并确保程序的稳定性。 示例 IPV4 #include <stdio.h>#include <stdlib.h>#include <sys/types.h>#include <sys/socket.h>#include <arpa/inet.h>#include <string.h>#include <netdb.h>int main(){int addrnum;char addrstring[16] = ...
inet_pton() 和 inet_ntop() 同时支持IPv4和IPv6。 inet_addr()函数:作用类似于inet_aton()函数 功能:inet_addr()函数用于将点分十进制IP地址转换成网络字节序IP地址; 原型:in_addr_t inet_addr(const char *cp); 返回值:如果正确执行将返回一个无符号长整数型数(in_addr_t)。如果传入的字符串不是一...
linux 网络编程 inet_pton & inet_ntop函数 #include <arpa/inet.h>int inet_pton(int family,constchar * strptr,void *addrptr); 返回:1--成功,0--输入不是有效的表达格式 , -1--出错constchar * inet_ntop(int family,constvoid * addrptr,char *strptr,size_t len); 其中len =sizeof(*strptr...
inet_pton函数返回一个整数,表示函数执行的结果: * 如果返回非零值,表示转换成功。可以将`dst`参数中的数据看作是转换后的网络字节顺序的IP地址。 * 如果返回零,表示转换失败。可以结合错误码和`errno`来进一步判断出错的原因。 * 如果返回-1,表示转换出错,但未设置`errno`。此时需要检查`src`参数是否有效,以及...
#include<arpa/inet.h> intinet_pton(intaf,constchar*src,void*dst);//[将“点分十进制” -> “整数”],这个函数转换字符串到网络地址. //返回值:若成功则为1,若输入不是有效的表达式则为0,若出错则为-1 constchar*inet_ntop(intaf,constvoid*src,char*dst,socklen_tsize); ...
inet_aton函数将一个点分十进制的IP地址转换成一个32位的整数,并将结果存储在指向结构体in_addr的指针中。其操作非常简单,直接输入一个字符串形式的IP地址,指定一个in_addr结构体类型的指针,即可完成ip字符串转整数的转换,如果转换成功则返回非零值(1),否则返回 0。
下面这对更新的函数也能完成前面 3 个函数同样的功能,并且它们同时适用 IPv4 地址和 IPv6 地址: #include // p:点分十进制的IP字符串,n:表示network,网络字节序的整数 int inet_pton(int af, const char *src, void *dst); af:地址族: AF_INET AF_INET6 src:需要转换的点分十进制的IP字符串 dst:...
int inet_pton(int family, const char* str, void* addr); //成功返回1,字符串无效返回0,出错返回-1 const char* inet_ntop(int family, const void* addr, char* str,size_t len); //成功返回结果指针,出错返回NULL /*说明 *后面两个函数为新函数,支持IPv4和IPv6,family用来指定:AF_INET,AF_INET...
inet_ntoa:网络字节序整数表示的IPv4地址转换为点分十进制表示的IPv4。但是该函数内部使用一个静态变量来保存结果的,函数的返回值是这个静态内存,多次调用会覆盖到之前调用产生的结果。 下面的更好用,适应于IPv6 代码语言:javascript 复制 #include<arpa/inet.h>intinet_pton(int af,constchar*src,void*dst);const...
IPv4/IPv6通用(推荐这个):点分十进制数串转网络字节序长整型:int inet_pton(int af, const char *src,void *dst);af:表示地址簇:AF_INET,AF_INET6;src:点分十进制IP地址串;dst:网络字节序长整型IP地址;返回值:<0:表示失败,返回值如果是0表示af或者src格式不对;网络字节序长整型转点分十进制数串...