51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

C语言笔记

IO多路转接(复用)之epoll

IO多路转接(复用)之epoll

厉飞雨 阅读(178) 评论(0) 赞(14)

<ol> <li>概述 {#1-概述} =============</li> </ol> <p>epoll 全称 eventpoll,是 linux 内核实现IO多路转接/复用(IO multiplexing)的一个实现。IO多路转接的意思是在一个操作里同时监听多个输入输出源,在其中一个或多个输入输出源可用的时候返回,...

基于UDP的套接字通信

基于UDP的套接字通信

厉飞雨 阅读(121) 评论(0) 赞(12)

udp是一个面向无连接的,不安全的,报式传输层协议,udp的通信过程默认也是阻塞的。 * `UDP通信不需要建立连接` ,因此不需要进行connect()操作 * `UDP通信过程中,每次都需要指定数据接收端的IP和端口`,和发快递差不多 * `UDP不对收到的数据进行排序,在UDP报文的首部中并没有关于数据顺序的信息` * `UDP对接收到的数据报不回复确认信息,发送...

UDP特性之广播

UDP特性之广播

厉飞雨 阅读(183) 评论(0) 赞(14)

1. 广播的特点 {#1-广播的特点} =================== 广播的UDP的特性之一,`通过广播可以向子网中多台计算机发送消息,并且子网中所有的计算机都可以接收到发送方发送的消息`,每个广播消息都包含一个特殊的IP地址,这个IP中子网内主机标志部分的二进制全部为1 (即点分十进制IP的最后一部分是255)。点分十进制的IP地址每一部分是1字节,最大值为255...

UDP特性之组播(多播)

UDP特性之组播(多播)

厉飞雨 阅读(142) 评论(0) 赞(18)

<ol> <li>组播的特点 {#1-组播的特点} ===================</li> </ol> <p>组播也可以称之为多播这也是UDP的特性之一。<code>组播是主机间一对多的通讯模式,是一种允许一个或多个组播源发送同一报文到多个接收者的技术。</code>组播源将一份报文发...

手写线程池 - C语言版

手写线程池 - C语言版

厉飞雨 阅读(163) 评论(0) 赞(12)

本文中关于线程池实现和编写步骤相关细节,请观看视频 [手把手教你撸一个线程池 - C语言版](https://www.bilibili.com/video/BV1jV411J795 "手把手教你撸一个线程池 - C语言版"),这里把相关的代码贴出来,以供参考。 1. 线程池原理 {#1-线程池原理} =================== 我们使用线程的...

文件I/O

文件I/O

厉飞雨 阅读(173) 评论(0) 赞(15)

<ol> <li>文件概述 {#1-文件概述} =================</li> </ol> <h2>1.1 什么是文件I/O {#1-1-什么是文件I-O}</h2> <p>文件 I/O(Input/Output)指的是程序与外部文件之间的数据传输操作。在许多编程语言中,包括C、C...

联合体和枚举

联合体和枚举

厉飞雨 阅读(107) 评论(0) 赞(16)

<ol> <li>联合体 {#1-联合体} ===============</li> </ol> <p>在 C 语言中,联合体又叫共用体(Union)是一种特殊的数据类型,定义联合体的语法如下:</p> <p>|---------------------|--------------------...

结构体

结构体

厉飞雨 阅读(125) 评论(0) 赞(11)

<ol> <li>结构体的定义和使用 {#1-结构体的定义和使用} ===========================</li> </ol> <p>在前面的章节中学习了数组,它描述的是一组具有相同类型数据的有序集合,用于处理大量相同类型的数据运算。</p> <p>有时我们需要将不同类型的数据...

内存布局

内存布局

厉飞雨 阅读(214) 评论(0) 赞(11)

<ol> <li>内存分区 {#1-内存分区} =================</li> </ol> <p>C代码经过预处理、编译、汇编、链接4步后生成一个二进制可执行程序。</p> <p>在 Linux 下,可以在命令行中通过<code>size</code>命令查...

内存作用域

内存作用域

厉飞雨 阅读(206) 评论(0) 赞(28)

1. 变量作用域 {#1-变量作用域} =================== C 语言中,作用域(Scope)是指程序中`变量、函数的可见性和生命周期的范围`。作用域规定了在程序中的哪些地方可以访问变量、函数。 C 语言中主要有以下几种作用域: 1. `文件作用域(File Scope)`:函数之外定义的变量具有文件作用域,也称为`全局作用域`。在文件的任何地方都可以访...