C通过主机名获取ip

时间:2013-03-03 21:46:36

标签: c sockets dns

有没有人知道如何从主机名获取ip以在c套接字中使用? (Winsock的) 我有一个插座但是当我使用时: sock.sin_addr.s_addr=inet_addr("example.no-ip.org");它无效......

2 个答案:

答案 0 :(得分:1)

inet_addr()只处理文本编写的已有数字的IP号码。您需要先使用getaddrinfo().

翻译域名

答案 1 :(得分:0)

函数inet_addr()仅适用于编号的ip地址,如1.2.3.4。 要查找通用主机名的IP地址,您需要使用函数gethostbyname()。 例如,请参阅this documentation of Microsoft with example。 或者,由于它已弃用,因此函数getaddrinfo()

哦,既然您使用的是Windows,请不要忘记事先致电WSAStartup()