<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
            C語言

            C++ boost::asio編程-域名解析詳解

            時間:2025-05-19 18:55:26 C語言 我要投稿
            • 相關推薦

            C++ boost::asio編程-域名解析詳解

              在網絡通信中通常我們并不直接使用IP地址,而是使用域名。這時候我們就需要用reslover類來通過域名獲取IP,它可以實現與IP版本無關的網址解析。下面,就和小編一起來看一看C++ boost::asio編程-域名解析詳解,希望對大家有幫助!


              #include "stdafx.h"

              #include "boost/asio.hpp"

              #include "boost/shared_ptr.hpp"

              #include "boost/thread.hpp"

              #include <boost/lexical_cast.hpp>//使用字符串轉換功能

              using namespace std;

              using namespace boost::asio;

              #ifdef _MSC_VER

              #define _WIN32_WINNT  0X0501 //避免VC下編譯警告

              #endif

              //域名解析為IP

              //入參:域名,端口

              //返回:ip地址

              vector<string> domain2ip(const char *domain,int port)

              {

              io_service ios;

              //創建resolver對象

              ip::tcp::resolver slv(ios);

              //創建query對象

              ip::tcp::resolver::query qry(domain,boost::lexical_cast<string>(port));//將int型端口轉換為字符串

              //使用resolve迭代端點

              ip::tcp::resolver::iterator it=slv.resolve(qry);

              ip::tcp::resolver::iterator end;

              vector<string> ip;

              for(;it!=end;it++)

              {

              ip.push_back((*it).endpoint().address().to_string());

              }

              return ip;

              }

              int _tmain(int argc, _TCHAR* argv[])

              {

              vector<string> ip=domain2ip("www.csdn.net",0);

              for(int i=0;i<ip.size();i++)

              {

              cout<<ip[i]<<endl;

              }

              get);

              return 0;

              }

              其中經過測試,端口可以填任意值均可以解析出來。


            【C++ boost::asio編程-域名解析詳解】相關文章:

            C++ this指針詳解07-04

            c++快速排序詳解10-18

            c++ 中--declspec 的用法詳解08-13

            C++ cin輸入流詳解10-11

            C++ 排序插入排序詳解08-03

            C++類中的繼承實例詳解07-05

            C++冒泡排序算法實例詳解06-09

            C++的字符串分割函數的使用詳解08-08

            c++運算符重載基礎知識詳解08-20

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院