C++通过域名获取服务器IP

xiaoxiao2021-02-28  91

void getrealip(string& strSrc,string& strResult) { strResult = ""; if (strSrc.empty()) { return; } char chIp[INET_ADDRSTRLEN]; struct hostent * phost = gethostbyname(strSrc.c_str()); if (NULL == phost) { return; } char ** pptemp = phost->h_addr_list; if (NULL == pptemp) { return; } if ((phost->h_addrtype==AF_INET) && (*pptemp!=NULL)) { //string为空时,不能使用printf函数,否则会崩溃 strResult = (NULL!=inet_ntop(phost->h_addrtype, *pptemp, chIp, sizeof(chIp)))?string(chIp):""; } }
转载请注明原文地址: https://www.6miu.com/read-53153.html

最新回复(0)