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

品牌网站建设解决方中信建设有限责任公司资质等级

品牌网站建设解决方,中信建设有限责任公司资质等级,整合营销传播的概念,淄博网站建设卓迅基于TCP的本地通信(客户机):创建流程:一、创建字节流式套接字(socket函数): int sock_fd socket(AF_LOCAL,SOCK_STREAM,0);二、创建客户机和服务器的本地网络信息结构体并填充客户机和服务器本…
  • 基于TCP的本地通信(客户机):
  • 创建流程:
  • 一、创建字节流式套接字(socket函数):
	int sock_fd = socket(AF_LOCAL,SOCK_STREAM,0);
  • 二、创建客户机和服务器的本地网络信息结构体并填充客户机和服务器本地网络信息结构体 (struct sockaddr_un):
  • 本地网络信息结构体:
	#include <sys/un.h>struct sockaddr_un {sa_family_t sun_family;               //AF_LOCALchar        sun_path[108];            //pathname};
	//填充服务器和客户机网络信息结构体struct sockaddr_un serveraddr, clientaddr;socklen_t serveraddr_len = sizeof(serveraddr);socklen_t clientaddr_len = sizeof(clientaddr);memset(&serveraddr, 0, serveraddr_len);memset(&clientaddr, 0, clientaddr_len);serveraddr.sun_family = AF_LOCAL;clientaddr.sun_family = AF_LOCAL;strcpy(serveraddr.sun_path, "./tcpserver");  //tcpserver是一个套接字类型的文件strcpy(clientaddr.sun_path, "./tcpclient"); //tcpclient是一个套接字类型的文件
  • 三、客户机绑定字节流式套接字(bind函数):
	bind(sock_fd, (struct sockaddr *)&clientaddr, clientaddr_len);
  • 四、与服务器建立连接(connect函数):
	connect(sock_fd, (struct sockaddr *)&serveraddr, serveraddr_len);
  • 五、客户机端发收数据(send函数、recv函数):
		memset(buf, 0, sizeof(buf));fgets(buf,sizeof(buf),stdin);buf[strlen(buf) - 1] = '\0';//给服务器发送消息int ret1 = send(sock_fd,buf,sizeof(buf),0);if(-1 == ret1){perror("send error");exit(-1);}memset(buf,0,sizeof(buf));//接收服务器的应答消息int ret2 = recv(sock_fd,buf,sizeof(buf),0);if(-1 == ret2){perror("recv error");exit(-1);}printf("服务器的应答消息[%s]\n",buf);
  • 六、关闭套接字(close函数):
	close(sock_fd);
  • 示例代码:
	#include <stdio.h>#include <string.h>#include <stdlib.h>#include <unistd.h>#include <sys/socket.h>#include <sys/types.h>#include <netinet/ip.h>#include <sys/un.h>#include <arpa/inet.h>#include <stdbool.h>int main(int argc, char const *argv[]){// 创建套接字int sock_fd = socket(AF_LOCAL, SOCK_STREAM, 0);if (-1 == sock_fd){perror("socket error");exit(-1);}// 填充客户机和服务器网络信息结构体struct sockaddr_un serveraddr, clientaddr;socklen_t serveraddr_len = sizeof(serveraddr);socklen_t clientaddr_len = sizeof(clientaddr);memset(&serveraddr, 0, serveraddr_len);memset(&clientaddr, 0, clientaddr_len);serveraddr.sun_family = AF_LOCAL;clientaddr.sun_family = AF_LOCAL;strcpy(serveraddr.sun_path, "./tcpserver");  //tcpserver是一个套接字类型的文件strcpy(clientaddr.sun_path, "./tcpclient"); //tcpclient是一个套接字类型的文件// 客户机绑定套接字if (-1 == bind(sock_fd, (struct sockaddr *)&clientaddr, clientaddr_len)){perror("bind error");exit(-1);}// 与服务器建立连接if (-1 == connect(sock_fd, (struct sockaddr *)&serveraddr, serveraddr_len)){perror("connect error");exit(-1);}char buf[128] = {0};int ret1 = 0;int ret2 = 0;// 提示信息printf("本地通信之TCP客户机成功连接服务器!!!\n");// 收发数据while (true){memset(buf, 0, sizeof(buf));fgets(buf,sizeof(buf),stdin);buf[strlen(buf) - 1] = '\0';//给服务器发送消息int ret1 = send(sock_fd,buf,sizeof(buf),0);if(-1 == ret1){perror("send error");exit(-1);}memset(buf,0,sizeof(buf));//接收服务器的应答消息int ret2 = recv(sock_fd,buf,sizeof(buf),0);if(-1 == ret2){perror("recv error");exit(-1);}printf("服务器的应答消息[%s]\n",buf);}// 关闭套接字close(sock_fd);return 0;}
  • 运行结果:
	本地通信之TCP客户机成功连接服务器!!!hello服务器的应答消息[hello-------k]hi服务器的应答消息[hi-------k]I Love China!!!服务器的应答消息[I Love China!!!-------k]
  • 特别注意:
  • strcpy(serveraddr.sun_path,"./tcpserver");strcpy(clientaddr.sun_path, "./tcpclient");代码段中的tcpserver文件tcpclient文件套接字文件
  • 如下所示:
	srwxrwxr-x 1 linux linux     0 1110 05:58 tcpserversrwxrwxr-x 1 linux linux     0 1110 06:00 tcpclient
http://www.yayakq.cn/news/292544/

相关文章:

  • 网站宣传怎么做新手如何做代理商
  • 不是万维网的网站电商平台技术开发方案
  • 圣诞节网站模板wordpress html模板
  • 如何找百度做网站wordpress模板应用
  • 上海网页制作与网站设临沂做外贸网站的公司
  • 如何利用视频网站做数字营销推广网站建设 软件有哪些
  • 可以做ppt的网站有哪些方面wordpress手机拍照插件
  • 莱芜正规的网站建设贵州网站建设lonwone
  • 深圳建专业网站免费企业网站注册
  • 什么是企业网建站优化是什么
  • 庆阳市建设工程网上投标网站东莞封了几个镇
  • 刘涛做的婴儿玩具网站ps网站轮播图怎么做
  • 做兼职写小说网站甘肃金恒大建设有限公司网站
  • 手机模板网站资阳市网站建设
  • 做服装零售上什么网站网站建设用哪种语言好
  • 摄影设计网站postgre wordpress
  • 网站建设服务合同缴纳印花税吗定制网站和模板网站及仿站的区别
  • 做网站总结体会规模以上工业企业的标准
  • 贵阳手机网站开发阿里云域名注册优惠口令
  • 会员类网站模板飞沐网站建设公司
  • 什么是网站原创文章打开百度网站
  • 全球顶尖设计网站百度广告联盟app
  • 网站搭建多少钱徐州百都网络非常好中国建设銀行网站投诉电话
  • 网站开发的评论界面怎么写本地营销型网站建设
  • 北京做网站建设多少钱网址链接
  • 专业做网站价格公众号模板编辑器
  • 网站建设和编程的区别周末做兼职上什么网站找
  • 谷歌浏览器官方app下载万能优化大师下载
  • 陕西省城乡建设厅网站wordpress数据库文件路径
  • 京东联盟网站推广位怎么做怎么样购买网站空间