服务器端:

#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <stdio.h>
#include <iostream>
#include <arpa/inet.h>
#include <unistd.h>using namespace std;typedef unsigned char uchar;int main()
{//build the socket for serverint s = socket(AF_INET, SOCK_STREAM, 0);//bind the socket to addressstruct sockaddr_in adr_s;adr_s.sin_family = AF_INET;adr_s.sin_addr.s_addr = inet_addr("127.0.0.1");adr_s.sin_port =htons(1235);bind(s, (struct sockaddr *)&adr_s, sizeof(adr_s));//listenlisten(s, 20);//accept the request from client//build the socket for client, system can bind local address to it automaticallystruct sockaddr_in adr_c;socklen_t c_size = sizeof(struct sockaddr_in);int c=  accept(s, (struct sockaddr *)&adr_c, &c_size);/*char str[] = "Hello World!";  // apply for a space for the received dataint recv_result = write(c, str, sizeof(str));cout<<"recv_result is:"<<recv_result<<endl;*/char buffer[BUFSIZ];int len;while((len = recv(c, buffer, BUFSIZ, 0))>0){buffer[len] = '\0';printf("recv string is:%s\n", buffer);if(send(c, buffer, len*sizeof(char), 0)<0)perror("send");}close(s);close(c);return 0;}

客户端:

#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <stdio.h>
# include <string.h>
#include <iostream>
#include <arpa/inet.h>#include <unistd.h>using namespace std;typedef unsigned char uchar;int main()
{//build a socket for the clientint c = socket(AF_INET, SOCK_STREAM, 0);//build a socket for the serverint s = socket(AF_INET, SOCK_STREAM, 0);   //the struct for the address of the serverstruct sockaddr_in adr_s;adr_s.sin_family = AF_INET;adr_s.sin_addr.s_addr = inet_addr("127.0.0.1");adr_s.sin_port =htons(1235);bind(s, (struct sockaddr *)&adr_s, sizeof(adr_s));//connect to the socket of the server.if(connect(c, (struct sockaddr*)&adr_s, sizeof(adr_s))<0)perror("connect");/*char buffer[40];read(c, buffer, sizeof(buffer)-1);printf("Message form server: %s\n", buffer);*/char buffer[BUFSIZ];int len;while(1){printf("input a string:");scanf("%s", buffer);if(send(c, buffer, strlen(buffer)*sizeof(char), 0)<0)perror("send");if((len = recv(c, buffer, BUFSIZ*sizeof(char), 0))<0)perror("recv");buffer[len] = '\0';printf("recv string is:%s\n", buffer);}close(c);return 0;
}

C++ socket编程实例相关推荐

  1. Socket编程实例

    2019独角兽企业重金招聘Python工程师标准>>> Java具有非常强大的网络应用开发能力.学习网络编程,估计都是从编写一个socket通信开始,从中慢慢掌握网络编程的一点点知识 ...

  2. C语言 socket编程实例

    C语言 socket编程实例 一. 面向连接的流式套接字 C/S 例子 二. 非阻塞的多人聊天服务器端例子 三. 简单的 IPv6 UDP socket编程 四.使用wireshark抓包分析tcp协 ...

  3. android c++ socket编程,C++ 中 socket编程实例详解

    C++ 中 socket编程实例详解 sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM),原始套接字(SOCK_RAW):基于TCP的soc ...

  4. NIO Socket编程实例

    1.阻塞模式实例 NIOUtil类,用来通过SOcket获取BufferedReader和PrintWriter. package IO;import java.io.BufferedReader; ...

  5. JAVA socket编程实例 转载

    事实上网络编程简单的理解就是两台计算机相互通讯数据而已.对于程序员而言,去掌握一种编程接口并使用一种编程模型相对就会显得简单的多了.Java SDK提供一些相对简单的Api来完成这些工作.Socket ...

  6. JAVA socket编程实例

    2019独角兽企业重金招聘Python工程师标准>>> 事实上网络编程简单的理解就是两台计算机相互通讯数据而已.对于程序员而言,去掌握一种编程接口并使用一种编程模型相对就会显得简单的 ...

  7. socket编程实例_NIO之网络编程源码阅读

    之前分析了ByteBuffer.Channel相关的基本知识,现在对于NIO的基石已经有了基本的了解.不过NIO最突出的特性还是其基于select编程模型的网络编程体验. NIO网络编程通常有两种使用 ...

  8. LiteOS通信模组教程05-LiteOS的SAL及socket编程实例

    1. SAL套接字抽象层 SAL全称Socket Abstract Layer,即套接字抽象层,主要作用是对上层应用提供一层统一的 socket 编程接口,屏蔽底层网络硬件的差异. LiteOS的SA ...

  9. php socket编程实例

    因为用到客户端程序与网页三方支付接口交互,我觉得可以这样来简单实现,在三方支付回调页面中放一个socket服务端,客户端程序与这个socket服务端进行交互,以此来进行最终业务逻辑处理. php中so ...

  10. tcp java实例_实现了基于TCP的Java Socket编程实例代码

    实现了基于TCP的Java Socket编程,功能很简单:客户端向服务器端输出一名话"connect",服务器端接收输出到控制台并向客户端输出一名话"Hello" ...

最新文章

  1. MVP在Android平台上的应用
  2. MATLAB修改工作环境
  3. 计算机用户名更改不了,简单几步解决win10电脑用户名改不了的问题
  4. 【Mongodb】如何创建mongodb的replica set
  5. [architecture]-ARMV7架构下Linux Kernel的Userspace进程切换时保存和恢复哪些寄存器
  6. 钱伯斯的遗产:思科与集成虚拟网络堆栈
  7. ashx中Response.ContentType的常用类型
  8. laravel 环境自编译过程
  9. java实现支付宝第三方登录_Java 实现QQ第三方登录(附赠:完整代码)
  10. [转载] python oct_Python oct()
  11. latex 论文绘图: 图像文字重叠
  12. TypeScript实战:下棋游戏
  13. GPU图形加速型云服务器是什么?
  14. SketchUppro 2021 已支持M1芯片款mac安装 SketchUppro 2021 直装版M1安装教程 M1芯片处理器安装草图大师问题教程
  15. 智慧政府:大数据治国时代的来临 - 电子书下载(高清版PDF格式+EPUB格式)
  16. You're currently running Fcitx with GUI 错误解决 Fcitx
  17. 【51单片机】基于51单片机的时钟电子锁设计
  18. IDEA 官网进不去解决办法
  19. vue + element 实现文件上传
  20. 三星支付存在漏洞可导致黑客进行交易劫持

热门文章

  1. Python常用模块库下载及安装
  2. 跨平台iOS自动化测试工具——tidevice安装及使用
  3. Win11系统安装教程 教你安装原版Win11系统
  4. 汽车型号json数据
  5. 解决从PDF复制文字后乱码问题
  6. 【SENCHA TOUCH】页面动画跳转切换
  7. Fragstats运行内存不够或卡顿问题解决
  8. 应对雾霾,哪款口罩适合你?
  9. WINDOWS10系统出现耳机插入没有声音,怎么解决?
  10. PCS7组态及简单项目搭建