当前位置: 首页 > news >正文

网站设计免费字体百度用户服务中心投诉电话

网站设计免费字体,百度用户服务中心投诉电话,tornado做网站,投稿网TCP网络编程的基本流程 对于服务端,通常为以下流程: 调用socket函数创建socket调用bind函数将socket绑定到某个IP和端口上调用listen开始监听当有客户端请求连接上来时,调用accept函数接受连接,产生一个新的socket基于新产生的socket调用send或recv函数,开始与客户端进行数据…TCP网络编程的基本流程 对于服务端,通常为以下流程: 调用socket函数创建socket调用bind函数将socket绑定到某个IP和端口上调用listen开始监听当有客户端请求连接上来时,调用accept函数接受连接,产生一个新的socket基于新产生的socket调用send或recv函数,开始与客户端进行数据交流通信结束后,调用close函数关闭套接字 对于客户端,通常为以下流程: 调用socket函数创建客户端socket 调用connect函数尝试连接服务器 连接成功后调用send或recv函数,开始与服务器进行通信 通信结束后,调用close函数关闭socket 服务端代码实现如下: #include iostream #include sys/types.h #include sys/socket.h #include arpa/inet.h #include unistd.h #include cstring #pragma clang diagnostic push #pragma ide diagnostic ignored EndlessLoop using std::cout; using std::endl; int main(int argc,char * argv[]) {//1.create socketint listenfd socket(AF_INET,SOCK_STREAM,0);if(listenfd -1){coutcreate listenfd failedendl;return -1;}//2.Initialize server addressstruct sockaddr_in bindaddr{};bindaddr.sin_family AF_INET;bindaddr.sin_addr.s_addr htonl(INADDR_ANY);bindaddr.sin_port htons(3000);if (bind(listenfd,(struct sockaddr*) bindaddr, sizeof(bindaddr)) -1){coutbind listen socket failed!endl;return -1;}//3.Start listeningif(listen(listenfd,SOMAXCONN) -1){coutlisten errorendl;return -1;}while (true){sockaddr_in clientaddr{};socklen_t clientaddrlen sizeof(clientaddr);//4.accept client connectint clientfd accept(listenfd,(struct sockaddr*)clientaddr,clientaddrlen);if (clientfd ! -1){//5.Receive data from the clientchar recvBuf[32]{0};int ret recv(clientfd,recvBuf,32,0);if (ret 0){coutReceive data from the client:recvBufendl;ret send(clientfd,recvBuf, strlen(recvBuf),0);if(ret ! strlen(recvBuf))coutsend failedendl;elsecoutsend successfullyendl;}else{coutReceive data errorendl;}close(clientfd);}}//7.close listenclose(listenfd);return 0; } #pragma clang diagnostic pop客户端代码 #include iostream #include sys/types.h #include sys/socket.h #include arpa/inet.h #include unistd.h #include cstring#define SERVER_ADDRESS 127.0.0.1 #define SERVER_PORT 3000 #define SEND_DATA helloworldint main(int argc,char *argv[]) {//1.create socketint clientfd socket(AF_INET,SOCK_STREAM,0);if(clientfd -1){std::coutcreate socket failedstd::endl;return -1;}//2.connect serversockaddr_in serveraddr;serveraddr.sin_family AF_INET;serveraddr.sin_addr.s_addr inet_addr(SERVER_ADDRESS);serveraddr.sin_port htons(SERVER_PORT);if (connect(clientfd,(struct sockaddr*) serveraddr, sizeof(serveraddr)) -1){std::coutconnect socket errorstd::endl;return -1;}//3. send data to serverint ret send(clientfd,SEND_DATA, strlen(SEND_DATA),0);if (ret ! strlen(SEND_DATA)){std::coutsend data failedstd::endl;return -1;}std::coutsuccessfullySEND_DATAstd::endl;//4.recv data from serverchar recvBuf[32] {0};ret recv(clientfd,recvBuf,32,0);if(ret 0){std::coutsucessfullystd::endl;} else{std::coutfailedrecvBufstd::endl;}//5.close socketclose(clientfd);return 0; }TCP网络编程的基本流程 Linux与C11多线程编程(学习笔记) Linux select函数用法和原理 socket的阻塞模式和非阻塞模式(send和recv函数在阻塞和非阻塞模式下的表现) connect函数在阻塞和非阻塞模式下的行为 获取socket对应的接收缓冲区中的可读数据量
http://www.pierceye.com/news/241374/

相关文章:

  • 外贸网站推广 sit淮安市广德育建设网站
  • 准备建网站该怎么做淘宝店铺
  • 1688外贸网站国外购物网站哪个最好
  • 怎么修改网站关键词网站建设的地方
  • 江苏运营网站建设业务淘宝推广引流方法有哪些
  • 快手评论点赞网站建设专业分站微信小程序开发者中心
  • mvc5网站开发之六 管理员p2网站模板
  • 黄页网站推广公司网站建设公司包括哪些内容
  • 网站平台建设目标修改网站j广州网络公司
  • 网站制作商城正规免费发布信息网站
  • 建设企业网站的人员组成莱芜网站建设费用
  • 长春建站网站西宁做网站君博专注
  • 学校实验室网站建设现状怎么做网站 ppt
  • 网站建设骗子公司新开传奇网站发布网
  • 智能模板网站建设方案深圳团购网站设计
  • 网站建设和网页设计用wordpress做网站页面显示404
  • 网站首页百度收录怎么做做装修公司网站
  • 湛江网站排名提升免费网站空间有什么用
  • 装修公司网站 源码绍兴市交通建设检测中心网站
  • 企业建设网站流程图珠海网站建设 旭洁
  • 企业商城网站开发互联网行业公司
  • 中国建设人才服务信息网是正规网站wordpress文章分享
  • 渭南网站建设公司电话央美老师做的家具网站
  • 机械网站建设栏目内容怎么欣赏一个网站设计图
  • 帝国cms 网站搬家wordpress 购物 插件下载
  • 怎么做ppt教程网站手机能访问asp网站
  • 电子商务网站建设与管理教材评价织梦网站地图调用全站文章
  • 020网站开发多少钱汕尾建设网站首页
  • 桓台县建设局网站做弹幕网站有哪些
  • 淘宝客导购网站源码iis默认网站属性