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

向国外支付网站开发费找培训机构的网站

向国外支付网站开发费,找培训机构的网站,做网站内容,网站网络服务器是什么情况介绍套接字UDP套接字的介绍见另一篇文章:https://zhuanlan.zhihu.com/p/113073033这篇文章已经介绍了很多基础的嵌套字的函数,在这里不做赘述,这篇实验报告,只介绍UDP中没有的函数.实际上套接字是互联网应用程序的接口…

介绍套接字

UDP套接字的介绍见另一篇文章:https://zhuanlan.zhihu.com/p/113073033

这篇文章已经介绍了很多基础的嵌套字的函数,在这里不做赘述,这篇实验报告,只介绍UDP中没有的函数.

实际上套接字是互联网应用程序的接口,可以把它理解为你办公室的门:当你想从你的办公室给同事传递消息时,你住需要把信放在门口,然后会有人(传输层等)会把信放到你的同事的门口,最后他就可以从门口拿到信读取其中的信息.这扇门之后发生的传递工作都是传输层的事情,跟应用层没关系.

由于套接字的库很多,在此不做详细解释,程序中使用到的数据类型和函数统一包括在下面的库函数中:

#include 

TCP套接字的信息传递建立在链接的基础上,因此TCP是可靠的传递方式.

运行环境

运行环境为Windows子系统Ubuntu 18.04 LTS

程序功能

TCP套接字我实现的功能稍微多一点具体如下:

(1)客户程序接收输入的一段字符串并且把字符串传递给服务器;

(2)服务器接受客户程序传来的字符串,输出客户程序的地址和字符串;

(3)服务器将当前时间、用户的地址、用户传来的字符串返回给客户程序;

(4)客户程序接受服务器传来的信息,并且输出全部信息.

服务器端程序

下面分块介绍服务器端程序.

首先声明套接字,必须要提的是,连接类型是SOCK_STREAM,协议类型是IPPROTO_TCP

// 创建TCP套接字

接下来设置服务器端的地址,并且绑定地址,这里都在UDP嵌套字中讲解过了

// 设置服务器的地址

然后要让服务器端程序建立监听队列,这里储存未处理的请求;

listen函数的第一个参数就是服务器的嵌套字;

第二个参数是队列的长度;

// 创建套接字队列

接下来是一些保存客户端套接字、地址、传来的信息的变量

// 缓冲区长度

服务器循环处理客户端请求的循环结构省略,直接看服务器接受客户端请求的函数accpet;

函数的第一个参数是服务器的套接字;

第二个参数是用来储存客户端地址的参数,注意要将他转成通用的地址结构struct sockaddr *;

第三个参数是地址结构的大小;

// 使用accept函数等待客户的请求

服务器和客户端建立好连接后开始接受客户端的数据.由于已经建立好一对一的链接,因此接收数据的函数read_from_client要比UDP的函数简单的多.

参数就是客户端的套接字(这个套接字不需要在前面和刚刚收到的地址绑定在一起),返回的就是客户端传来数据

// 从客户端接受信息

接下来是向客户端传递信息的函数,这个函数也比UDP简单

第一个参数是客户端的套接字;

第二个参数是传送的字符串;

第三个参数是缓冲区的大小;第四个参数不用管,传0

// 向客户端传递时间

下面是全部的服务器端的代码

#include 

客户端程序

客户端详细介绍一下传送信息的函数和接收信息的函数就差不多了,其他的操作都在服务器端里面有.

传递信息的函数wirte,同样由于已经建立好一对一的链接因此函数比较简单:

第一个参数为客户端的套接字;

第二个参数为要传递的字符串;

第三个参数为字符串的最大长度,也就是缓冲区的大小;

// 客户向服务器传输数据时用的函数

接收信息的函数recv:

第一个参数是客户端的套接字;

第二个参数是储存信息的字符串;第三个参数不用管,给0;

这里解释一下返回值是字符串的长度,因此给字符串加上结束符'0';

int 

接下来是客户端的全部代码:

#include 

运行结果

首先启动服务器程序如下

46e35e3db1a36f06813ae59b82316970.png

然后启动客户端程序,客户端程序运行完之后结果如下:

9869693b852de59b5506f239fd9bb69b.png

回过头来看服务器程序:

d26eff8266c35a48873de6057c5b8909.png

评论

C语言的细节真多,啥时候放一下python的套接字真心无脑……

http://www.lbrq.cn/news/2784079.html

相关文章:

  • 可以做仿牌网站郑州百度seo网站优化
  • 青海城乡和住房建设厅网站南京百度
  • 贵州住房和城乡建设部网站首页关键词优化意见
  • 成都专业网站建设价格低班级优化大师手机版下载(免费)
  • 长春网站建站全网推广的方式有哪些
  • 网站的开发工具和运行环境竞价交易规则
  • 真实的做视频网站360网站推广费用
  • 有什么网站接效果图做的常见的网络营销模式
  • 古交市住房和城乡建设局网站seo搜索引擎官网
  • 自己的公司怎么做网站网络seo外包
  • 动态网站开发结束语链接买卖平台
  • html做的网站图片横着摆放seo课程培训入门
  • 网站建设品网站关键词优化排名外包
  • 企业网站做优化排名象客西安市网站
  • 代做原创毕业设计网站免费发布信息不收费的网站
  • 网站建设怎么跟客服说东莞推广系统
  • wordpress及时聊天网站优化公司开始上班了
  • 企业邮箱个人注册河北seo基础知识
  • 网站建设公司河南郑州如何做好网站的推广工作
  • 哪个网站可查询有没有做社保卡关键字c语言
  • 网站建设分金手指排名十四百度刷seo关键词排名
  • 石家庄大型网站建站关键词智能优化排名
  • 网站建设包括什么科目石家庄手机端seo
  • 现在网站建设用到哪些技术短视频新媒体推广
  • vps做vpn svn和网站抖音关键词搜索指数
  • wap手机网站建站济南网站制作公司
  • 初一下电脑课书做网站优化落实疫情防控
  • 网站模板怎么替换公众号seo排名软件
  • 网站怎么做扫码微信支付网站建站价格
  • 网站建设怎样设置动态背景怎样才能被百度秒收录
  • OpenTelemetry、Jaeger 与 Zipkin:分布式链路追踪方案对比与实践
  • JAVA经典面试题:数据库调优
  • fit函数
  • IDE/去读懂STM32CubeMX 时钟配置图(有源/无源晶振、旁路/晶振模式、倍频/分频)
  • 【编程实践】关于S3DIS数据集的问题
  • 一文读懂[特殊字符] LlamaFactory 中 Loss 曲线图