一起talk C栗子吧(第一百四十五回:C语言实例--socket概述)



各位看官们,大家好,上一回中咱们说的是基于文件指针进行文件操作的例子,这一回咱们说的例子是socket概述。闲话休提,言归正转。让我们一起talk C栗子吧!

看官们,我们今天主要介绍socket。“前面章回中还在介绍文件操作,怎么突然来说这个叫socket的东西呢?”这里有看官在问了,看官莫急,我们之所为介绍socket,是因为它有点类似文件操作中的文件描述符。说类似有点不太准确,其实socket本质上就是文件描述符。我们可以使用read,write等系统调用来操作socket。当然了,系统也为socket提供了专门的系统调用,我们在后面章回中将会介绍这些专门的系统调用。

我们在这里介绍socket还有另外一种原因,大家还记得在介绍文件操作时,我们刚刚介绍完了进程以及进程通信相关的知识。其实socket也是一种进程间的通信方式。因此,大家可以理解为,我们是在介绍另外一种进程间通信的方式。

说了这么多,让我们掀开socket的面纱来看看它的真面目。socket也叫套接字,它是一种进程间通信的方式。它是从Unix上发展而来,已经广泛应用于Linux和Windows等其它系统。本地计算机中的两个进程可以通过socket进行通信,这点和其它进程间的通信方式相同。除此之外,它最主要的作用是,在网络中不同计算机上的进程间进行通信,简单点说,它是网络进程间的通信方式。它的这个特点令其它进程间的通信方式望尘莫及。

socket好比一座桥梁,它连接着网络中不同的计算机,这些计算机可以借助socket来进行通信。我们只需要按照规则使用socket就可以,而不需要关注其中的通信细节。我们举一个常见的例子来说明。我们经常使用浏览器来访问网页,此时,本地电脑中的浏览器会和网页所在的服务器之间建立一个连接。这个连接就是通过socket建立的,我们浏览网页时,网页服务器会通过该连接把数据传输给浏览器,这样我们就能看到网页上面的内容了。

各位看官,关于socket的例子咱们就说到这里。欲知后面还有什么例子,且听下回分解 。


时间: 2024-10-29 19:12:19

一起talk C栗子吧(第一百四十五回:C语言实例--socket概述)的相关文章

一起talk C栗子吧(第一百四十六回:C语言实例--socket属性)

各位看官们,大家好,上一回中咱们说的是socket概述的例子,这一回咱们说的例子是socket属性.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,我们在上一 回中对socket做了基本的介绍,这一回我们主要是介绍socket的属性. socket主要有三个属性: 域(domain) 类型(type) 协议(protocol) 域表示socket的通信范围.比如,我们通过互联网通信时使用的域为AF_INET(表示IPv4,与现在使用的IPv6对应的域是AF_INET6),我们在本地通

一起talk C栗子吧(第十五回:C语言实例--双向链表)

各位看官们,大家好,从今天开始,我们讲大型章回体科技小说 :C栗子,也就是C语言实例.闲话休提, 言归正转.让我们一起talk C栗子吧! 看官们,上一回中咱们说的是循环链表的例子,这一回咱们说的例子是:双向链表. 看官们,双向链表也是一种链表.我们在前面两回中说到的链表,都是沿着链表头部到链表尾部这样的方 向进行操作,而今天咱们要说的双向链表既可以沿着链表头部到链表尾部这样的方向进行操作,也可以沿 着链表尾部到链表头部这样的方向进行操作.这也是正是叫它双向链表的原因. 在例子中,查找和删除结点

一起talk C栗子吧(第十二回:C语言实例--单链表一)

各位看官们,大家好,从今天开始,我们讲大型章回体科技小说 :C栗子,也就是C语言实例.闲话休提, 言归正转.让我们一起talk C栗子吧! 看官们,上一回中咱们没有说具体的例子,而且是说了例子中的文件组织结构.这一回咱们继续说C例子, 说的例子是链表,更准确的说法叫作单链表.咱们不但要说C例子,而且会在例子中使用上一回中说过的 文件组织结构,就当作是举例说明文件组织结构的使用方法. 有点一石二鸟的感觉,哈哈. 链表定义 看官们,所谓的链表其实就是一组元素通过一定的方式链接在一起.比如我们坐的火车

一起talk C栗子吧(第一百四十九回:C语言实例--socket通信三)

各位看官们,大家好,上一回中咱们说的是socket通信的例子,这一回咱们继续说该例子.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,我们在上一回中介绍了socket通信的步骤,当时提到了实现这些步骤使用的系统调用,当时有些看官不理解这些系统调用,今天我们趁热打铁来介绍这些系统调用. int socket(int domain, int type, int protocol) 该函数用来创建一个socket; 该函数的三个参数分别对应socket的三个属性:域,类型和协议: 该函数运

一起talk C栗子吧(第一百四十八回:C语言实例--socket通信二)

各位看官们,大家好,上一回中咱们说的是socket通信的例子,这一回咱们继续说该例子.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,我们在上一回中介绍了套接字的通信步骤,限于时间的原因, 我们只介绍了流套接字的通信步骤.这一回中我们将介绍数据报套接字的通信步骤. 下面是客户端和服务器端实现通信的详细步骤: 客户端实现通信的步骤: 1.创建客户端套接字(socket): 2.设置客户端套接字的属性:域,类型和协议: 3.通过操作客户端套接字来实现客户端与服务器的通信(sendto,r

一起talk C栗子吧(第一百四十四回:C语言实例--文件操作大结局)

各位看官们,大家好,上一回中咱们说的是基于文件指针进行文件操作的例子,这一回咱们说的是文件操作大结局.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,我们在前面章回中介绍了文件操作的两种途径:文件描述符和文件指针.今天我们将对这两种文件操作途径进行总结和对比. 我们先看看它们的共同点: 1.口味相同:都喜欢吃文件(都能用来操作文件): 2.生活方式相同:日出而作,日落而息(使用它们时都是按照文件操作三步曲进行:打开,操作,关闭): 3.都不省心:使用时容易引起错误,需要检查使用后的结

一起talk C栗子吧(第一百一十二回:C语言实例--线程同步概述)

各位看官们,大家好.上一回中咱们说的是线程间通信的样例,这一回咱们说的样例是:线程同步.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,提到同步.我想大家都不陌生,由于我们在前面章回中介绍过进程同步的内容. 大家都知道线程是轻量级的进程,尽管线程不像进程一样须要专门的通信机制,可是线程须要专门的同步机制. 今天我们来介绍一下线程同步的内容. 同步的含义对于进程和线程是同样的.仅仅是进程和线程实现同步的方式不同样.关于同步的含义,我们就不做具体的介绍了,假设大家忘记了,能够点击这里查看

第一百四十五节,JavaScript,同步动画

JavaScript,同步动画 将上一节的,移动透明动画,修改成可以支持同步动画,也就是可以给这个动画方法多个动画任务,让它同时完成 原理: 向方法里添加一个属性,这个属性是一个对象,同步动画属性,属性值为对象,对象里面是,动画方式:目标量,组合的键值对,只能动画方式加目标量的键值对 /** yi_dong_tou_ming()方法,动态改变css属性说明 * * yi_dong_tou_ming()方法,将一个元素,进行一下动画操作 * 1,x将元素横向左移动或者右移动 * 2, y将元素竖向

一起talk C栗子吧(第九十五回:C语言实例--使用共享内存进行进程间通信一)

各位看官们,大家好,上一回中咱们说的是SystemV IPC结构概述的例子,这一回咱们说的例子是:使用共享内存进行进程间通信.闲话休提,言归正转.让我们一起talk C栗子吧! 共享内存是SystemV IPC结构这种抽象概念的一种具体对象.就和它的名字一样,它提供了一段内存空间供不同的进程使用,进程之间可以通过该内存空间传递数据,进而实现进程间的通信. 在介绍共享内存的使用方法之前,我们先介绍几个函数,这些函数都是用来操作共享的内存的. shmget函数 int shmget(key_t ke