• gethostbyname根据主机名获得地址方法


     char ch[] = "www.163.com";
      HOSTENT *host = NULL;
      
      int iStar = ::GetCurrentTime();  // 开始时间
      host = ::gethostbyname(ch);
      
       if (NULL == host)
        break;
       
       CString ss = host->h_name;
       
       sockaddr_in sa;
       for (int nAdapter=0; host->h_addr_list[nAdapter]; nAdapter++)
       {
        memcpy ( &sa.sin_addr.s_addr, host->h_addr_list[nAdapter],host->h_length);
        // 输出机器的IP地址.
        TRACE("Address: %s/n", inet_ntoa(sa.sin_addr)); // 显示地址串
        
        // 连接所有解析过来的IP
        if (SOCKET_ERROR == connect (s, (sockaddr*)&sa, sizeof(sa)) )
        {
         // AfxMessageBox("连接错误", MB_TOPMOST);
         LogWrite ("解析 %s: 地址(%s) 连接失败",ch,/
          inet_ntoa(sa.sin_addr));
         Sleep(100);
         continue;
        } 
    }
    TRACE ("耗时 %d毫秒/r/n", GetCurrentTime() - iStar);

  • 相关阅读:
    Java学习总结
    John 尼姆博弈
    博弈知识汇总(转)
    坏习纠正
    QDUOJ 河老师的新年礼物(尺取法)
    HDU
    QDUOJ ycb的ACM进阶之路 二进制多重背包
    HDU
    HDU
    POJ
  • 原文地址:https://www.cnblogs.com/tyjsjl/p/2156082.html
Copyright © 2020-2023  润新知