我如何在 boost::asio 中读取数据包,例如 0x01,当前代码我只读取文本:
m_socket.async_read_some(boost::asio::buffer(buffer),
strand.wrap(boost::bind(&Client::handleRead, shared_from_this(),
boost::asio::placeholders::error,
boost::asio::placeholders::bytes_transferred)));
谢谢
最佳答案
您好,您可以使用 int 变量分配缓冲区,而不是使用从套接字读取的值
int m_hdr_size = 0; // this var must be not local
boost::asio::async_read_some(
boost::asio::buffer(reinterpret_cast<char*>(&m_hdr_size), size_t(4))...
如果我理解你的问题。只需设置变量并将其大小设置为缓冲区
http://think-async.com/Asio/boost_asio_1_3_1/doc/html/boost_asio/reference/buffer.html
关于c++ - 如何在 boost::asio 中读取数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4354273/