首页 > 其他 > 详细

boost之asio

时间:2020-10-11 08:58:54      阅读:35      评论:0      收藏:0      [点我收藏+]

asio

asio是C++的准标准网络库,并且C++20标准库的网络部分将基于ASIO,需引入头文件#include <boost/asio.hpp>

ip地址

boost定义了表示ip地址的类型,支持ipv4和ipv6,提供ip::addressip::address_v4以及ip::address_v6三种类型。

  • 通过字符串构造ip地址:
#include <boost/asio.hpp>

namespace ba = boost::asio;
namespace bi = ba::ip;

int main(int argc, char* argv[])
{
    // 通过点分十进制转换为ipv4地址
    bi::address addrV4 = bi::make_address("127.0.0.1");
    assert(addrV4.is_v4());

    // 通过十六进制转换为ipv6地址
    bi::address addrV6 = bi::make_address("ABCD:EF01:2345:6789:ABCD:EF01:2345:6789");
    assert(addrV6.is_v6());

    // bi::address重载了流操作符,可以直接输出(所以也可以用boost::lexical_cast<string>(address))
    std::cout << addrV4 << std::endl;
    std::cout << addrV6 << std::endl;

    return 0;
}

boost之asio

原文:https://www.cnblogs.com/HachikoT/p/13795967.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!