一起talk C栗子吧(第一百四十七回:C语言实例--socket通信一)
程序员文章站
2022-07-02 20:30:33
各位看官们,大家好,上一回中咱们说的是socket属性的例子,这一回咱们说的例子是socket通信。闲话休提,言归正转。让我们一起talk c栗子吧!
看官们,我们在前面章回...
各位看官们,大家好,上一回中咱们说的是socket属性的例子,这一回咱们说的例子是socket通信。闲话休提,言归正转。让我们一起talk c栗子吧!
看官们,我们在前面章回中介绍了socket的基本概述,这一回中我们将介绍如何使用socket来实现两个进程之间的通信。为了方便大家理解socket通信的方式,我们把通信的双方分别称作客户端和服务器端。
下面是客户端和服务器端实现通信的详细步骤:
客户端实现通信的步骤
1.创建客户端套接字(socket); 2.设置客户端套接字的属性:域,类型和协议; 3.使用客户端套接字和服务器进行连接(connect); 4.连接成功后,通过操作客户端套接字来实现客户端与服务器的通信(read,write,sned,recv); 5.释放套接字,断开客户端与服务器端的通信(close,shutdown);服务器端实现通信的步骤
1.创建服务器端套接字(socket); 2.设置服务器端套接字的属性:域,类型和协议; 3.把服务器端的套接字和它的属性绑定在一起,本质上是在指定服务器端的通信进程(bind); 4.服务器端创建套接字队列,为通信做好准备,开始监听客户端发来的通信连接请求(listen); 5.服务器端接受客户端发来的连接请求,并且获得与客户端匹配的socket(accept); 6.连接成功后,通过操作步骤5中获得的套接字来实现客户端与服务器的通信(read,write,sned,recv); 7.释放套接字,断开服务器端与客户端的通信(close,shutdown);在上面的步骤中,我们把每个步骤中需要使用到的调用都列出来了,它们位于括号中。括号中大部分的系统调用大家可能还不了解,或者是第一次见到,大家不用担心,我们在后面的章回中会介绍这些系统调用。不过,括号中的系统调用也有我们熟悉的,比如我们在前面章回中介绍过的read,write。
各位看官,关于socket通信的例子咱们就说到这里。欲知后面还有什么例子,且听下回分解 。
上一篇: Huffman Tree——文件压缩
下一篇: 就喜欢你这样直接进套的人
推荐阅读
-
一起talk C栗子吧(第一百八十四回:C语言实例--在printf函数中设置输出宽度三)
-
一起talk C栗子吧(第一百九十六回:C语言实例--DIY less命令五 )
-
一起talk C栗子吧(第一百六十二回:C语言实例--套接字知识体系图)
-
一起talk C栗子吧( 第一百四十回:C语言实例--文件操作:基于文件描述符三)
-
一起talk C栗子吧(第一百四十三回:C语言实例--文件操作:基于文件指针三)
-
一起talk C栗子吧(第一百三十九回:C语言实例--文件操作:基于文件描述符二)
-
一起talk C栗子吧(第一百三十八回:C语言实例--文件操作:基于文件描述符一)
-
一起talk C栗子吧(第一百四十一回:C语言实例--文件操作:基于文件指针一)
-
一起talk C栗子吧(第一百四十二回:C语言实例--文件操作:基于文件指针二)
-
一起talk C栗子吧(第一百六十回:C语言实例--套接字通信模型二)