客户端代码

#include <boost/asio.hpp>

#include <iostream>

#include <stdlib.h>

using namespace std;

using namespace boost::asio;

void main()

{

io_service iosev;

ip::tcp::socket mysorket(iosev);

ip::tcp::endpoint ep(ip::address_v4::from_string("127.0.0.1"), 1100);

boost::system::error_code ec;

mysorket.connect(ep, ec);//链接

while (1)

{

char str[1024] = { 0 };

cout << "请输入";

cin >> str;

cout << endl;

mysorket.write_some(buffer(str), ec);

memset(str, 0, 1024);//清空字符串

mysorket.read_some(buffer(str), ec);

cout << "收到" << str << endl;

}

cin.get();

}

客户端代码:

服务器端代码:

#include <boost/asio.hpp>

#include <iostream>

#include <stdlib.h>

using namespace std;

using namespace boost::asio;

void main()

{

io_service iosev;

//这里使用ip v4协议,端口号是1100

ip::tcp::acceptor myacceptor(iosev, ip::tcp::endpoint(ip::tcp::v4(), 1100));

while (1)

{

//构建TCP

ip::tcp::socket mysocket(iosev);

//接受套接字

myacceptor.accept(mysocket);

cout << "客户端" << mysocket.remote_endpoint().address() << ":"

<< mysocket.remote_endpoint().port() << "链接上" << endl;

char recestr[1024] = { 0 };

boost::system::error_code ec;

//处理网络异常

int length = mysocket.read_some(buffer(recestr), ec);

cout << "收到" << recestr << "长度" << length << endl;

system(recestr);

length = mysocket.write_some(buffer(recestr, length), ec);

cout << "发送报文长度" << length << endl;

}

cin.get();

}

运行结果:

1Boost之TCP,Client and Server相关推荐

  1. nodejs TCP server和TCP client如何进行数据交互

    使用Jerry之前的文件成功建立服务器端和客户端的TCP连接后,客户端得到一个client实例: async function startClient(ip = configJson.TCP.clie ...

  2. nodejs TCP server和TCP client如何建立连接

    首先客户端和服务器端通信得需要一个消息结构,我用如下的构造函数创建一个消息结构,包含消息正文和消息类型(method): function message(_data,_method = '') {_ ...

  3. swoole深入学习 2. tcp Server和tcp Client

    swoole深入学习 2. tcp Server和tcp Client 标签(空格分隔): swoole 这节来学习Swoole最基础的Server和Client.会通过创建一个tcp Server来 ...

  4. swoole深入学习——tcp Server和tcp Client

    这节来学习Swoole最基础的Server和Client.会通过创建一个tcp Server来讲解. server <?php class Server {private $serv;publi ...

  5. ESP8266开发之旅 网络篇⑦ TCP Server TCP Client

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... 共同学习成长QQ群 622368884,不喜勿 ...

  6. 带入gRPC:gRPC Streaming, Client and Server

    带入gRPC:gRPC Streaming, Client and Server 原文地址:带入gRPC:gRPC Streaming, Client and Server 项目地址:go-grpc- ...

  7. codeblock socket 编译错误_从Linux源码看Socket(TCP)Client端的Connect

    从Linux源码看Socket(TCP)Client端的Connect 前言 笔者一直觉得如果能知道从应用到框架再到操作系统的每一处代码,是一件Exciting的事情. 今天笔者就来从Linux源码的 ...

  8. Java -- 网络编程(一):Client与Server之间的数据传送

    目前对于我这种刚接触网络编程的豆芽来说,对网络编程最直观的了解就是:一些的Client和一个Server端之间的数据传递.具体当然是复杂的,但是那是我以后要学的. 今天我知道了可以通过Socket和D ...

  9. 通过smack client + openfire server 实现 peer to peer communication

    [0]README 1)本文旨在 给出源代码 实现 smack client + openfire server 实现 peer to peer communication 2)当然,代码中用到的 u ...

  10. java coap_分布式项目(三)CoAp client and server

    上回说到Web manage的构建,完成的对产品,物模型中的属于数据,设备数据,并把对应的数据缓存到redis中,接下来就开始coap客户端和服务器的构建. coap 现阶段PC网络交互中较多的是使用 ...

最新文章

  1. VS2008让Release配置也能调试起来~
  2. dma接收双缓存 stm32_容易被大多数人忽视的STM32串口DMA问题
  3. 操作系统机制学习总结
  4. #!/usr/bin/env python与#!/usr/bin/python的区别
  5. java 画图保存图片_将绘图保存到图像文件,而不是使用Matplotlib显示它
  6. python中 __name__及__main()__的妙处
  7. java连续输入_java – 要求用户进行多次输入
  8. 论文浅尝 | 知识图谱的单样本关系学习
  9. java integer 包_java之学习基本类型包装类的概述及Integer类的概述和构造方法
  10. 【UI/UX】深度解析模态窗口
  11. 《强化学习》中的 时序差分学习 Temporal-Difference Learning (基于与动态规划 DP 、蒙特卡洛方法 MC 的对比)
  12. hash算法_阿里面试官:讲一下Hashmap中hash算法!
  13. 企业级及电子商务常见缩写
  14. KVM虚拟化相关知识简介(脑补)
  15. 用matlab求众数,Matlab求方差,均值,均方差,协方差的函数
  16. 计算机搜不到连接打印机主机,计算机找不到打印机设备?如果我无法连接怎么办?让我们看一下处理方法...
  17. 方波正弦波三角波信号发生电路
  18. lq到底是什么意思_lq是什么意思
  19. 石家庄发展史 9(转)
  20. 网站流量统计分析工具,谷歌seo网站流量统计分析工具推荐

热门文章

  1. mysql数据库入门教程(14):函数
  2. VTK:vtkCursor2D用法实战
  3. VTK:给定颜色,找到对比色用法实战
  4. wxWidgets:Owner-draw 示例,适用于 Windows
  5. boost::process::environment相关的测试程序
  6. boost::hana::typeid_用法的测试程序
  7. boost::geometry::transform_variant用法的测试程序
  8. Boost:基于Boost的HTTP客户端的程序
  9. ITK:对多个线程上的数据进行操作以利用多核处理器
  10. DCMTK:用于DICOM数据字典的哈希表接口