Нет, gethostbyname()
может возвращать нотацию IPV4 (стандартная точка) или IPV6 (стандартное двоеточие или, возможно, точка), по крайней мере в Linux . Вы должны будете иметь дело с этим. Я думаю, что различные реализации этого возвращают только IPV4 (например, PHP ), но каждая платформа C, которую я использовал, может и будет возвращать обе.
Если ваше приложение только для IPV4, его не так уж сложно выяснить, что вы имеете дело с IPV6, и вывести ошибку, если у пользователя нет подходящего интерфейса для подключения к удаленному хосту. Даже если ваше приложение поддерживает оба типа, что поддерживает пользовательский шлюз?
Более трех .
или наличие :
.. его IPV6.
Редактировать
h_addr
является синонимом h_addrlist_[0]
, а h_length
- длина всех адресов.
Возможно, я не совсем понимаю ваш вопрос?