Различия между inet_aton() и gethostbyname() в C?
Я изучаю C и TCP/UDP. Как заголовок... Есть ли разница между inet_aton() и gethostbyname() в C? Из того, что я знаю, оба преобразуют IP-адрес из строки в число.
2 ответа
Решение
gethostbyname() устарел. Вы должны использовать getaddrinfo ().
inet_aton() работает только для IPv4.
Кроме того, inet_aton() только преобразует понятие IPv4 (0.0.0.0) в int, getaddrinfo выполняет разрешение DNS.
gethostbyname() используется для получения ip-адреса от имени хоста и сохранения их в struct in_addr.Where, поскольку inet_aton принимает IP-адрес в точечном формате и преобразует в сетевой порядок байтов.