gpt4 book ai didi

c++ - 如何获得 boost 缓冲区的大小

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:00:32 26 4
gpt4 key购买 nike

我正在尝试在 visual studio 中制作一个异步服务器,我使用

boost::asio::async_read(m_socket, boost::asio::buffer(m_buffer), 
boost::bind(&tcp_connection::handle_read, shared_from_this(),
boost::asio::placeholders::error));

获取要放入m_buffer的缓冲区

boost::array<char, 256> m_buffer;

但是我如何获得这个东西的大小,m_buffer?

size() 不起作用,end() 不起作用.. 任何帮助都会很棒。提前致谢。

最佳答案

boost::array 具有恒定大小。如果要将其打印为空终止字符串,请使用 .data() to get a const char* .

如果你只是想找到\0的位置,use std::find .

int size = find(array.begin(), array.end(), '\0') - array.begin();

关于c++ - 如何获得 boost 缓冲区的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2981928/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com