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