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

濮阳网站建设费用重庆沙坪坝区房价

濮阳网站建设费用,重庆沙坪坝区房价,应用分发平台,市场监督管理局管什么1.广播 发送端#xff08;类似于客户端#xff09; 流程#xff1a; 创建套接字 填充接收端#xff08;服务器#xff09;网络信息结构体 bind(非必须绑定) 设置允许广播 向接收端#xff08;服务器#xff09;发送数据 关闭套接字文件 #include stdio.h #in…1.广播 发送端类似于客户端 流程 创建套接字 填充接收端服务器网络信息结构体 bind(非必须绑定) 设置允许广播 向接收端服务器发送数据 关闭套接字文件 #include stdio.h #include sys/types.h #include sys/socket.h #include string.h #include netinet/in.h #include arpa/inet.h #include unistd.h#define ERR_MSG(msg) do{\fprintf(stderr,LINE:__%d__,__LINE__);\perror(msg);\ }while(0)#define PORT 3333 #define IP 172.17,94.255int main(int argc, const char *argv[]) {int fd socket(AF_INET,SOCK_DGRAM,0);if(-1 fd){ERR_MSG(socket);return -1;}//填充接受端的网络信息结构体struct sockaddr_in recvaddr;recvaddr.sin_family AF_INET;recvaddr.sin_port htons(PORT);recvaddr.sin_addr.s_addr inet_addr(IP);//可绑可不绑//设置允许广播int broad 1;if(-1 setsockopt(fd,SOL_SOCKET,SO_BROADCAST,\broad,sizeof(broad))){ERR_MSG(setsockopt);return -1;}printf(broad set success broad %d\n,broad);char buf[128] ;ssize_t res 0;while(1){//向服务器发送数据bzero(buf,sizeof(buf));fgets(buf,sizeof(buf),stdin);buf[strlen(buf)-1] 0;if(-1 sendto(fd,buf,sizeof(buf),0,\(struct sockaddr*)recvaddr,sizeof(recvaddr))){ERR_MSG(sendto);return -1;}printf(sendto success\n);}//关闭套接字close(fd);return 0; }接收端类似于服务器 流程 创建套接字 填充接收端本身服务器的网络信息结构体 bind必须) 绑定套接字和自身的网络信息结构体 新建一个网络信息结构体用来存储发送端的地址信息 接受发送端发来的数据 关闭套接字 #include stdio.h #include sys/types.h #include sys/socket.h #include string.h #include netinet/in.h #include arpa/inet.h #include unistd.h#define ERR_MSG(msg) do{\fprintf(stderr,LINE:__%d__,__LINE__);\perror(msg);\ }while(0)#define PORT 3333 #define IP 172.17,94.255int main(int argc, const char *argv[]) {int fd socket(AF_INET,SOCK_DGRAM,0);if(-1 fd){ERR_MSG(socket);return -1;}//填充接受端的网络信息结构体struct sockaddr_in recvaddr;int len sizeof(recvaddr);recvaddr.sin_family AF_INET;recvaddr.sin_port htons(PORT);recvaddr.sin_addr.s_addr inet_addr(IP);//必须绑定if(-1 bind(fd,(struct sockaddr*)recvaddr,len)){ERR_MSG(bind);return -1;}printf(bind success\n);//新建一个网络信息结构体用来存储接受的数据从哪来struct sockaddr_in sendaddr;int sendlen sizeof(sendaddr);char buf[128] ;ssize_t res 0;while(1){//接受发送端客户端发来的数据bzero(buf,sizeof(buf));if(-1 recvfrom(fd,buf,sizeof(buf),0,\(struct sockaddr*)sendaddr,sendlen)){ERR_MSG(recvfrom);return -1;}printf(recvfrom success\n);printf([%s:%d] msg:%s\n,inet_ntoa(sendaddr.sin_addr),\ntohs(sendaddr.sin_port),buf);}//关闭套接字close(fd);return 0; }广播 发送端类似于客户端 流程 创建套接字 填充接收端服务器的网络信息结构体 IP为广播组的IP地址 bind(非必须) 设置允许广播 发送广播信息 关闭套接字 #include stdio.h #include sys/types.h #include sys/socket.h #include string.h #include netinet/in.h #include arpa/inet.h #include unistd.h#define ERR_MSG(msg) do{\fprintf(stderr,LINE:__%d__,__LINE__);\perror(msg);\ }while(0)#define PORT 3333 #define IP 224.1.2.3int main(int argc, const char *argv[]) {int fd socket(AF_INET,SOCK_DGRAM,0);if(-1 fd){ERR_MSG(socket);return -1;}//填充接受端的网络信息结构体struct sockaddr_in recvaddr;recvaddr.sin_family AF_INET;recvaddr.sin_port htons(PORT);recvaddr.sin_addr.s_addr inet_addr(IP);//可绑可不绑//设置允许广播int broad 1;if(-1 setsockopt(fd,SOL_SOCKET,SO_BROADCAST,\broad,sizeof(broad))){ERR_MSG(setsockopt);return -1;}printf(broad set success broad %d\n,broad);char buf[128] ;ssize_t res 0;while(1){//向服务器发送数据bzero(buf,sizeof(buf));fgets(buf,sizeof(buf),stdin);buf[strlen(buf)-1] 0;if(-1 sendto(fd,buf,sizeof(buf),0,\(struct sockaddr*)recvaddr,sizeof(recvaddr))){ERR_MSG(sendto);return -1;}printf(sendto success\n);}//关闭套接字close(fd);return 0; }接收端类似于服务器 流程 创建套接字 填充接收端自身、服务器的网络信息结构体广播组IP… bind必须绑定绑定服务器与套接字 填充广播组的网络信息结构体广播组IP,本地IP,网卡编号 滴滴查询网卡编号ifconfig 查看使用的是哪个网卡再 ip ad 查看对应的编号 添加广播组 新建一个网络信息结构体用来存储发送端的地址信息 循环接受信息 关闭套接字 #include stdio.h #include sys/types.h #include sys/socket.h #include string.h #include netinet/in.h #include arpa/inet.h #include unistd.h#define ERR_MSG(msg) do{\fprintf(stderr,LINE:__%d__,__LINE__);\perror(msg);\ }while(0)#define PORT 3333 #define IP 224.1.2.3int main(int argc, const char *argv[]) {int fd socket(AF_INET,SOCK_DGRAM,0);if(-1 fd){ERR_MSG(socket);return -1;}//填充接受端的网络信息结构体struct sockaddr_in recvaddr;int len sizeof(recvaddr);recvaddr.sin_family AF_INET;recvaddr.sin_port htons(PORT);recvaddr.sin_addr.s_addr inet_addr(IP);//必须绑定if(-1 bind(fd,(struct sockaddr*)recvaddr,len)){ERR_MSG(bind);return -1;}printf(bind success\n);//加入多播组struct ip_mreqn mq;mq.imr_multiaddr.s_addr inet_addr(IP);//多播组的组mq.imr_address.s_addr inet_addr(172.17.94.145);//本地mq.imr_ifindex 3;//网络设备编号指定网卡号if(-1 setsockopt(fd,IPPROTO_IP,IP_ADD_MEMBERSHIP,\mq,sizeof(mq))){ERR_MSG(setsockopt);return -1;}printf(membership set succes );//新建一个网络信息结构体用来存储接受的数据从哪来struct sockaddr_in sendaddr;int sendlen sizeof(sendaddr);char buf[128] ;ssize_t res 0;while(1){//接受发送端客户端发来的数据bzero(buf,sizeof(buf));res recvfrom(fd,buf,sizeof(buf),0,\(struct sockaddr*)sendaddr,sendlen);if(-1 res){ERR_MSG(recvfrom);return -1;}else if(0 res){printf(发送端退出\n);break;}printf(recvfrom success\n);printf([%s:%d] msg:%s\n,inet_ntoa(sendaddr.sin_addr),\ntohs(sendaddr.sin_port),buf);}//关闭套接字close(fd);return 0; }结果
http://www.hkea.cn/news/14529217/

相关文章:

  • 太仓网站建设服务sem运营有出路吗
  • 建设网站步骤是为什么要用国外服务器做网站
  • 厦门北京网站建设公司给我一个用c 做的网站
  • 国外建设工程网站带有网站开发的图片
  • 襄阳市住房城乡建设部网站苏州商城网站建设
  • 贵州建设厅网站报名系统做签到的网站
  • 江门网站设计找哪家帝国做视频网站
  • 网站建设费可以抵扣进项税吗网络推广公司专业网络
  • 濮阳专业做网站公司网站引导页模板
  • 如何查看网站的空间商外贸网站设计郑州
  • 公司网站开发怎么收费青岛房产信息网
  • 信云科技的vps怎么做网站app download
  • 网站建设百度认证企业计划书范文完整版
  • 巩义网站优化免费做游戏网站
  • 海澜之家网站建设的计划郑州营销型网站建设公司
  • 企业北京响应式网站制作怎么查网站开发的语言
  • 营销型网站模板认识网络营销
  • 怎么写公司网站的文案平面设计师网站都有哪些
  • wordpress建站准备黄山建设厅官方网站
  • 上海建站中心网站广告代码
  • 深圳罗湖区网站建设批量上传网站产品
  • 哪些网站开业做简单海报网站管理系统设置
  • 女生做a视频的网站是什多少网站推广文案怎么写
  • 江苏网站推广公司哪家好涟源市建设局网站
  • 网站设计的价格龙泉市住房和城乡建设局网站
  • 网站建设公司下载手机网站模板网
  • 建设中学校园网站的目的宝塔怎么做两个网站的解析
  • 一个购物网站开发语言网站建设php的心得和体会
  • 响应式网站建设新闻wordpress 数据库 缓存6
  • 贵阳建设厅网站网站建设与运营财务预算