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

企业培训网站做销售网站

企业培训网站,做销售网站,南山网站设计方案,如何在百度发布广告信息UDP服务器的实现流程:一、创建用户数据报套接字(socket函数):通信域选择IPV4网络协议、套接字类型选择数据报式; int sockfd socket(AF_INET,SOCK_DGRAM,0); 二、填充服务器的网络信息结构体:1.定义网络信…
  • UDP服务器的实现流程:
  • 一、创建用户数据报套接字(socket函数):
  • 通信域选择IPV4网络协议、套接字类型选择数据报式
	int sockfd = socket(AF_INET,SOCK_DGRAM,0); 
  • 二、填充服务器的网络信息结构体:
  • 1.定义网络信息结构体变量;
  • 2.求出结构体变量的内存空间大小;
  • 3.结构体清零;
  • 4.使用IPV4网络协议;
  • 5.预留给在终端输入的网络字节序的端口号;
  • 6.预留给在终端输入的IP地址;
	struct sockaddr_in serveraddr; //定义网络信息结构体变量socklen_t serveraddrlen = sizeof(serveraddr);//求出结构体变量的内存空间大小memset(&serveraddr,0,serveraddrlen); //结构体清零serveraddr.sin_family = AF_INET;  //使用IPV4网络协议serveraddr.sin_addr.s_addr = inet_addr(argv[1]); //网络字节序的端口号serveraddr.sin_port = htons(atoi(argv[2])); //IP地址
  • 三、套接字和服务器的网络信息结构体进行绑定(bind函数):
	int ret = bind(sockfd,(struct sockaddr *)&serveraddr,serveraddrlen);
  • 四、接收来自客户端的数据(recvfrom函数)和给客户端发送应答消息(sendto函数):
	int ret1 = recvfrom(sockfd,buf,sizeof(buf),0,(struct sockaddr *)&clientaddr,&clientaddrlen);strcat(buf,"------------k");int ret2 =sendto(sockfd,buf,sizeof(buf),0,(struct sockaddr *)&clientaddr,clientaddrlen);
  • 五、关闭套接字(close函数):
	close(sockfd);
  • 综合应用实例代码如下所示:
//UDP服务器#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <stdlib.h>
#include <netinet/in.h>
#include <netinet/ip.h>
#include <string.h>
#include <arpa/inet.h>
#include <unistd.h>#define ERRLOG(msg) do{\printf("%s:%s:%d\n", __FILE__, __func__, __LINE__);\perror(msg);\exit(-1);\}while(0)int main(int argc, const char *argv[])
{//入参合理性检查if(3 != argc){printf("Usage : %s <IP> <port>\n", argv[0]);exit(-1);}//创建用户数据报套接字int sockfd = socket(AF_INET,SOCK_DGRAM,0);if(-1 == sockfd){ERRLOG("socket error");}//填充服务器网络信息结构体struct sockaddr_in serveraddr;socklen_t serveraddrlen = sizeof(serveraddr);memset(&serveraddr,0,serveraddrlen);serveraddr.sin_family = AF_INET;serveraddr.sin_addr.s_addr = inet_addr(argv[1]);serveraddr.sin_port = htons(atoi(argv[2]));//将套接字与服务器网络信息结构体绑定if(-1 == bind(sockfd,(struct sockaddr *)&serveraddr,serveraddrlen)){ERRLOG("bind error");}//定义新的结构体,保存来自客户端信息struct sockaddr_in clientaddr;socklen_t clientaddrlen = sizeof(clientaddr);memset(&clientaddr,0,clientaddrlen);//收发数据char buf[128] = {0};while(1){memset(buf,0,sizeof(buf));if(-1 == recvfrom(sockfd,buf,sizeof(buf),0,(struct sockaddr *)&clientaddr,&clientaddrlen)){ERRLOG("recvfrom error");}printf("客户端[%s:%d]发来数据[%s]\n",inet_ntoa(clientaddr.sin_addr),ntohs(clientaddr.sin_port),buf);//组装应答消息strcat(buf,"------------k");if(-1 == sendto(sockfd,buf,sizeof(buf),0,(struct sockaddr *)&clientaddr,clientaddrlen)){ERRLOG("sendto error");}}//关闭套接字close(sockfd);return 0;
}
  • 本示例代码,仅供参考;
http://www.yayakq.cn/news/56709/

相关文章:

  • 做网站怎么打空格兰溪建设网站
  • 网站广告费一般多少钱母版页和窗体做网站例子
  • 做网站在哪里专业网站策划 西安
  • 公司微网站建设价格wordpress被恶意登录
  • 朝阳区北京网站建设wordpress插件 评分
  • 网站怎么做修改做网站的天津
  • 三亚做民宿的都用什么网站郑州博大泌尿外科医院
  • 网网站建设与设计公司怎么找做网站
  • 山西企业建站方案中国装修网官方网站
  • 做推广最好的网站是哪个php企业网站建设
  • 超级工程网站建设网站seo关键词优化技巧
  • 长春工作招聘网国内seo公司排行榜前十名
  • wordpress网站网速慢招生网站怎么做
  • 冀州做网站的公司广东做网站
  • 广西网站建设电话数字币网站开发
  • 如何把php做的网站做成appwindows同步wordpress
  • 电商网站建设题库如何查找网站的死链接
  • 免费网站怎么建立做本地网站能赚钱么
  • 网站建立时间浙江广厦建设职业技术学院招生网站
  • 微网站建设公司wordpress audaz主题
  • 外包服务属于什么行业优化最狠的手机优化软件
  • 动漫网站在线免费观看虹口网站开发培训课程
  • 网站模板套用个人网站的搭建步骤
  • 网站设置访问权限花卉物流园做网站的素材
  • 什么网站做的最好wordpress ssl 图片
  • 教育行业网站设计学习软件app
  • 电子商务网站建设教学网站源码上传教程
  • 石家庄网站外包wordpress 倒计时广告
  • 做网站最专业潍坊建设局网站
  • 企业网站建设合同范本建立网站的关键是定位