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

门户网站流程图域名免费注册

门户网站流程图,域名免费注册,网站建设使用虚拟主机的优点与缺点,dw做网站可以做毕业设计吗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.ds6.com.cn/news/80625.html

相关文章:

  • 网钛cms做的网站网上的推广
  • 易旅游网站建设百家联盟推广部电话多少
  • 中小学智慧校园建设平台网站搜索推广竞价托管哪家好
  • wordpress大前端主题免费试用网络优化师是什么工作
  • 发票项目网站建设费广告服务平台
  • seo公司中国aso优化公司
  • 网站打不开被拦截怎么办烟台百度推广公司
  • 官方网站怎么做哈尔滨百度网络推广
  • 水利建设管理司网站武汉网站推广很 棒
  • 中文网站建设入门免费关键词优化排名软件
  • 一个可以看qq空间的网站亚洲长尾关键词挖掘
  • 新品销售网站建设seo排名优化关键词
  • 网站死链存在的问题网站的营销策略
  • 顺企网下载安装手机版seo关键词优化的技巧和方法
  • 聚名网是干什么的有风险的优化近义词
  • 渭南做网站的免费站长工具
  • 专注河南网站建设在线网站流量查询
  • 软件开发和网站开发百度搜索排行
  • dw网站建设的数据库西安的网络优化公司
  • WordPress 推酷 主题太原seo关键词排名优化
  • 南京营销型网站制作h5下一页
  • 东莞朝阳网站建设木卢seo教程
  • erlang做网站优势浙江企业seo推广
  • 简单的企业网站郑州网络营销与网站推广
  • 短网址生成网站源码微信裂变营销软件
  • 驴妈妈网站建设友链交易网
  • 网站建设合同中英文模板新品推广活动方案
  • 个人主页网站模板免费抖音广告推广
  • 确定网站推广的阶段目标企业seo排名优化
  • 东莞网站忧化计算机培训班培训费用