Linux 平台
#include <iostream>
#include <netdb.h>
#include <netinet/in.h>
#include <cstring>
int main() {
auto host = gethostbyname("www.bdjw.work");
if (host) {
std::cout << host->h_name << std::endl;
std::cout << host->h_length << std::endl;
if (AF_INET == host->h_addrtype)
std::cout << "AF_INET" << std::endl;
else
std::cout << host->h_addrtype << std::endl;
for (size_t i = 0; host->h_aliases[i]; i++)
std::cout << host->h_aliases[i] << std::endl;
for (size_t i = 0; host->h_addr_list[i]; i++)
std::cout << inet_ntoa(*(in_addr*)host->h_addr_list[i]) << std::endl;
}
sockaddr_in addr;
memset(&addr, 0, sizeof(addr));
addr.sin_addr.s_addr = inet_addr("101.43.87.248");
host = gethostbyaddr((char*)&addr.sin_addr, 4, AF_INET);
(host) {
std::cout << host->h_name << std::endl;
std::cout << host->h_length << std::endl;
(AF_INET == host->h_addrtype)
std::cout << << std::endl;
std::cout << host->h_addrtype << std::endl;
( i = ; host->h_aliases[i]; i++)
std::cout << host->h_aliases[i] << std::endl;
( i = ; host->h_addr_list[i]; i++)
std::cout << (*(in_addr*)host->h_addr_list[i]) << std::endl;
}
;
}