boost库1.70,tcp建立连接的客户端
时间: 2024-03-15 17:47:52 浏览: 143
基于boost库的tcp协议通信
5星 · 资源好评率100%
可以使用Boost.Asio库来实现TCP客户端。以下是一个简单的示例:
```c++
#include <boost/asio.hpp>
#include <iostream>
using boost::asio::ip::tcp;
int main() {
try {
boost::asio::io_context io_context;
// 创建一个TCP连接
tcp::socket socket(io_context);
tcp::resolver resolver(io_context);
boost::asio::connect(socket, resolver.resolve("localhost", "daytime"));
// 发送数据
std::string message = "Hello from Boost.Asio client!";
boost::asio::write(socket, boost::asio::buffer(message));
// 读取响应
boost::asio::streambuf receive_buffer;
boost::asio::read_until(socket, receive_buffer, "\n");
std::string response = boost::asio::buffer_cast<const char*>(receive_buffer.data());
std::cout << "Received response: " << response << std::endl;
}
catch (std::exception& e) {
std::cerr << "Exception: " << e.what() << std::endl;
}
return 0;
}
```
在该示例中,我们使用了Boost.Asio库创建了一个TCP连接,并向服务器发送了一条消息。接着,我们使用`read_until`函数读取服务器的响应。最后,我们将响应输出到控制台。
请注意,此示例仅适用于本地运行的服务器。如果要连接到远程服务器,则需要修改`resolver.resolve`函数的参数。
阅读全文