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

多网站系统佛山网站建设公司排行

多网站系统,佛山网站建设公司排行,商品数据包网站开发,台州建设局网站企业黑名单作业 1、将TCP的CS模型再敲一遍 服务器 #include myhead.h #define PORT 8888 #define IP 192.168.124.123 int main(int argc, const char *argv[]) {//创建套接字//绑定本机IP和端口号//监听客户端请求//接收客户端连接请求//收发消息//创建套接字int…作业 1、将TCP的CS模型再敲一遍 服务器 #include myhead.h #define PORT 8888 #define IP 192.168.124.123 int main(int argc, const char *argv[]) {//创建套接字//绑定本机IP和端口号//监听客户端请求//接收客户端连接请求//收发消息//创建套接字int oldfd ;if((oldfd socket(AF_INET,SOCK_STREAM,0))-1) //创建套接字{perror(socket);return -1;}//端口号快速复用int n 2;if(setsockopt(oldfd,SOL_SOCKET,SO_REUSEADDR,n,sizeof(n))-1){perror(setsockopt);return -1;}//绑定本机IP和端口号struct sockaddr_in server {.sin_family AF_INET,.sin_port htons(PORT),.sin_addr.s_addr inet_addr(IP)};if(bind(oldfd,(struct sockaddr *)server,sizeof(server))-1){perror(bind);return -1;}//监听客户端连接请求client变量接收客户端信息struct sockaddr_in client;int client_len sizeof(client);int newfd;if(newfd accept(oldfd,(struct sockaddr *)client,client_len)-1){perror(accept);return -1;}printf(%s:%d连接\n,inet_ntoa(client.sin_addr),ntohs(client.sin_port));//收发消息char buff[1024];while(1){int res recv(newfd,buff,sizeof(buff),0);if(res 0){printf(客户端退出\n);break;}printf(收到消息%s,收到消息的长度%d\n,buff,res);strcat(buff,霜雪);send(newfd,buff,sizeof(buff),0);bzero(buff,sizeof(buff));}close(newfd);close(oldfd);return 0; }客户端 #include myhead.h #define IP 192.168.124.123 #define SERPORT 9999 int main(int argc, const char *argv[]) {//1、创建套接字//2、绑定不是必须绑定//3、连接//4、收发消息int oldfd socket(AF_INET,SOCK_STREAM,0);if(oldfd-1){perror(socket);return -1;} #if 0//绑定固定的IP和端口号(不是必须的)struct sockaddr_in client {.sin_family AF_INET,.sin_port htons(7899),//自定义端口号.sin_addr.s_addr inet_addr(192.168.124.34)};if(bind(oldfd,(struct sockaddr *)client,sizeof(client))-1){perror(bind);return -1;} #endif//连接服务器struct sockaddr_in server {.sin_family AF_INET,.sin_port htons(SERPORT),//注意端口号需要服务器端口.sin_addr.s_addr inet_addr(IP)};if(connect(oldfd,(struct sockaddr *)server,sizeof(server))-1){perror(connect);return -1;}//收发消息char buff[1024];while(1){fgets(buff,sizeof(buff),stdin);buff[strlen(buff)-1] \0;send(oldfd,buff,sizeof(buff),0);if(strcmp(buff,quit)0)//退出客户端{break;}bzero(buff,sizeof(buff));recv(oldfd,buff,sizeof(buff),0);//阻塞接收服务器消息printf(服务器发来消息%s\n,buff);}close(oldfd);return 0; } 2、UDP服务器中使用connect函数实现唯一的客户端与服务器通话。 服务器 #include myhead.h #define PORT 8888#define IP 192.168.124.123int main(int argc, const char *argv[]) {//创建套接字int oldfd socket(AF_INET,SOCK_DGRAM,0);if(oldfd -1){perror(socket);return -1;}//绑定struct sockaddr_in server {.sin_family AF_INET,.sin_port htons(PORT),.sin_addr.s_addr inet_addr(IP)};if(bind (oldfd,(struct sockaddr *)server,sizeof(server))-1){perror(bind);return -1;}struct sockaddr_in client;int client_len sizeof(client);char buff[1024];int flag 0;while(1){recvfrom(oldfd,buff,sizeof(buff),0,(struct sockaddr *)client,client_len);printf(%s:%d信息%s\n,inet_ntoa(client.sin_addr),ntohs(client.sin_port),buff);if(connect(oldfd,(struct sockaddr *)client,sizeof(client))-1){perror(connect);return -1;}while(1){int res recvfrom(oldfd,buff,sizeof(buff),0,NULL,NULL);printf(%s\n,buff);strcat(buff,周日还要上课吴);sendto(oldfd,buff,sizeof(buff),0,NULL,0);bzero(buff,sizeof(buff));if(res 0){printf(退出客户端\n);break;}}}return 0; }客户端 #include myhead.h #define IP 192.168.124.123 #define PORT 8888 int main(int argc, const char *argv[]) {//1、创建套接字int oldfd socket(AF_INET,SOCK_DGRAM,0);if(oldfd-1){perror(socket);return -1;}//2、收发消息struct sockaddr_in server {.sin_family AF_INET,.sin_port htons(PORT),.sin_addr.s_addr inet_addr(IP)};if(connect(oldfd,(struct sockaddr *)server,sizeof(server))-1){perror(connect);return -1;} char buff[1024];while(1){fgets(buff,sizeof(buff),stdin);buff[strlen(buff)-1] \0;sendto(oldfd,buff,sizeof(buff),0,(struct sockaddr *)server,sizeof(server));bzero(buff,sizeof(buff));recvfrom(oldfd,buff,sizeof(buff),0,NULL,NULL);printf(接收服务器信息%s\n,buff);}return 0; }笔记整理 流程图 UDP服务器 1、创建套接字。 2、绑定本机IP和端口号。 3、收发消息由于不知道对方是谁对方也不知道您是谁所以在发送时附带自己的信息接收时接收对方信息。 UDP相关API #include sys/types.h         #include sys/socket.h                 ssize_t sendto(int sockfd, const void *buf, size_t len, int flags, const struct sockaddr *dest_addr, socklen_t addrlen);         功能发送信息函数         参数1套接字         参数2发送的信息         参数3信息大小         参数4 0阻塞接收                         MSG_DONTWAIT:费阻塞接收         参数5填写发送目标的IP和端口号 参数6参数5的大小。         返回值成功返回发送的字节个数失败返回-1并置位错误码。         #include sys/types.h         #include sys/socket.h                 ssize_t recvfrom(int sockfd, void *buf, size_t len, int flags, struct sockaddr *src_addr, socklen_t *addrlen);         功能接收信息函数         参数1套接字         参数2发送的信息         参数3信息大小         参数4 0阻塞接收                         MSG_DONTWAIT:费阻塞接收         参数5自动填充发信息的主机信息。         返回值成功返回发送的字节个数失败返回-1并置位错误码。 、UDP服务器 #include myhead.h #define PORT 8888 #define IP 192.168.124.34int main(int argc, const char *argv[]) {//1、创建UDP套接字int oldfd socket(AF_INET,SOCK_DGRAM,0);if(oldfd-1){perror(socket);return -1;}//2、绑定struct sockaddr_in server {.sin_family AF_INET,.sin_port htons(PORT),.sin_addr .s_addr inet_addr(IP)};if(bind(oldfd,(struct sockaddr *)server,sizeof(server))-1){perror(bind);return -1;}//收发消息struct sockaddr_in client;int client_len sizeof(client);char buff[1024];while(1){//接收客户端消息时会将客户端信息写入clientrecvfrom(oldfd,buff,sizeof(buff),0,(struct sockaddr *)client,client_len);printf(收到%s%d的消息%s\n,inet_ntoa(client.sin_addr),ntohs(client.sin_port),buff);strcat(buff,元旦不放假难受);sendto(oldfd,buff,sizeof(buff),0,(struct sockaddr *)client,sizeof(client));//收到谁的信息就发给谁}return 0; } 4、UDP客户端 1、创建套接字 2、收发消息 #include myhead.h #define IP 192.168.124.34 #define PORT 8888 int main(int argc, const char *argv[]) {//1、创建套接字int oldfd socket(AF_INET,SOCK_DGRAM,0);if(oldfd-1){perror(socket);return -1;}//2、收发消息struct sockaddr_in server {.sin_family AF_INET,.sin_port htons(PORT),.sin_addr.s_addr inet_addr(IP)};char buff[1024];while(1){fgets(buff,sizeof(buff),stdin);buff[strlen(buff)-1] \0;sendto(oldfd,buff,sizeof(buff),0,(struct sockaddr *)server,sizeof(server));bzero(buff,sizeof(buff));recvfrom(oldfd,buff,sizeof(buff),0,NULL,NULL);printf(接收服务器信息%s\n,buff);}return 0; } 思维导图
http://www.dnsts.com.cn/news/125783.html

相关文章:

  • 什么网站可以做长图重庆网站建站系统哪家好
  • 淘宝客网站怎么批量采集淘宝商品方维采集淘宝数据思路信息流广告投放是什么
  • 杭州电子商务网站建设外贸公司网站建设费用报销
  • 购物网站功能模块静态网站模板
  • 科技 响应式网站模板下载外贸 wordpress模板
  • 做网站是用什么语言做成的wordpress确认窗口
  • 支付网站建设会计分录龙口网站制作价格
  • 佛山网站建设是哪个wordpress运行平台
  • 网店网站建设规划方案网站数据迁移教程
  • 丹灶建网站校园网站建设的背景
  • 网站建设功能要求个人怎么注册一个品牌
  • 前端做网站需要高密市网站建设
  • 中建南方建设集团网站对个人做swot分析的网站
  • 网站建设方案的含义asp网站下载
  • 网站建设设计公司+知乎网站备案失败
  • 外国知名个人网站提供网站建设服务
  • 石狮网站定制网站模版修改
  • 周口市住房和城乡建设局门户网站工厂仓库管理系统erp
  • 做网站的博客wordpress图片批量上传插件
  • iis建好的网站套用模板企业推广策划方案
  • 2008 iis 添加 网站 权限设置权限设计理念简短范文
  • 那种网站怎么搜关键词厉害的seo顾问
  • 网站建设微享互动昆明网页设计培训机构
  • 网站服务器放置地哈尔滨网站建设 博客
  • 做网站1核1g服务器够吗安徽湖滨建设集团有限公司网站
  • 出口退税在哪个网站做网络工程师难学吗
  • 套模板做网站电话怎么做网站赚钱放广告
  • 红谷滩园林建设集团有限公司 网站中小企业网络设计与实现
  • 陕西省交通建设厅网站软文推广页面
  • 东莞网络推广网站自己如何做简单网站