我做错了什么,当我传递IP地址或任何IP时,它总是在无主机找到的块中失败。非常感谢任何帮助。
struct in_addr ip;
inet_aton(argv[1], &ip);
he= gethostbyaddr((const void *)&ip,len,AF_INET);
printf("%s \n", he->h_name);
答案 0 :(得分:1)
gethostbyaddr()
的第二个参数是传递的二进制文件的长度
地址,因此len
应为sizeof(in_addr)
。
备注:您应该考虑使用getnameinfo()
,这是“更现代”,可以处理IPv4和IPv6地址。