将主机名转换为IP地址。

3

如何使用Windows API将主机名(例如“myhost”)转换为IPAddr类型。 IPAddr是无符号长整型。

1个回答

4

尝试这个 (已编辑):

hostent * record = gethostbyname(argv[1]);
if(record == NULL)
{
    printf("%s is unavailable\n", argv[1]);
    exit(1);
}
in_addr * address = (in_addr * )record->h_addr;
string ip_address = inet_ntoa(* address);
IPAddr dst_ip = ::inet_addr( ip_address.c_str() );

2
是的,这让我得到了一个IP地址字符串,但不是IPAddr(无符号长整型)。您能否更新您的答案,添加以下行:IPAddr dst_ip = ::inet_addr( ip_address.c_str() ); - Blazes

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接