C++获取站点的ip地址



  1. #include "stdafx.h" 
  2. #include <winsock2.h> 
  3. #pragma comment (lib,"ws2_32.lib") 
  4. int _tmain(int argc, _TCHAR* argv[]) 
  5. {  
  6.  
  7. p: printf("输入地址:"); 
  8. char szHost[256]; 
  9. memset(szHost,0,256); 
  10. scanf("%s",szHost); 
  11. unsigned long lAddr = inet_addr(szHost); 
  12. if (lAddr == INADDR_NONE) 
  13.   hostent *pHE = gethostbyname(szHost); 
  14.   if (!pHE) 
  15.    goto p; 
  16.   sockaddr_in sa; 
  17.   for (int iHost=0;pHE->h_addr_list[iHost];iHost++)  
  18.   { 
  19.    char *ip; 
  20.    unsigned int port; 
  21.    memcpy(&sa.sin_addr.s_addr, pHE->h_addr_list[iHost], pHE->h_length); 
  22.    ip = inet_ntoa(sa.sin_addr);printf("%s\n",ip); 
  23.   } 
  24. goto p; 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。