51工具盒子

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

C语言笔记

手写线程池 - C语言版

手写线程池 - C语言版

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

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

预处理

预处理

厉飞雨 阅读(8) 评论(0) 赞(2)

1. 程序编译的四个阶段 {#1-程序编译的四个阶段} =========================== C程序的编译过程包含了四个主要阶段,它们是: 1. `预处理(Preprocessing)`:在这个阶段,预处理器会处理源代码中的预处理指令,包括宏展开、文件包含、条件编译等。 2. `编译(Compilation)`:在编译阶段,编译器将预处理后的代码转换为汇...

内存和指针

内存和指针

厉飞雨 阅读(9) 评论(0) 赞(0)

1. 内存 {#1-内存} ============= 关于内存我们都耳熟能详,对于程序员而言,可以从两个维度去理解这个概念 --- `物理存储器和存储地址空间`: * 内存是计算机系统中用于存储数据和指令的地方。它是计算机的关键组件之一,用于临时存储和处理正在运行的程序所需的数据。 * 主板上装插的内存条 * 显示卡上的显示RAM芯片 * 各种适配卡上的RA...

数组和指针

数组和指针

厉飞雨 阅读(10) 评论(0) 赞(2)

1. 操作数组元素 {#1-操作数组元素} ===================== 在C语言中,数组名实际上就是一个指向数组首元素的指针。换句话说,可以把数组名视为指向了数组的第一个元素的内存地址。 例如,对于一个整型数组 `int arry[5] = {1, 2, 3, 4, 5}`,我们可以通过数组名 `arry` 或者通过取指针操作符 `&arry[0]`...

指针和函数

指针和函数

厉飞雨 阅读(10) 评论(0) 赞(3)

函数和指针在 C/C++ 中常常一起使用,指针可以用于传递函数参数、返回函数结果或者作为函数的返回值。这样做可以实现更灵活和高效的程序设计。 下面是一些常见的函数和指针的使用方式: 1. 指针做函数参数 {#1-指针做函数参数} ======================= 1.1 参数为变量 {#1-1-参数为变量} ---------------------- 可...

指针和字符串

指针和字符串

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

1. 字符指针 {#1-字符指针} ================= 1.1 处理字符串 {#1-1-处理字符串} ---------------------- 字符指针是指向字符(char)数据类型的指针变量。它们可以用于处理字符串(以 NULL结尾的字符数组)和字符数组,并对其中的字符进行读取、修改和操作。以下是一个示例,展示了字符指针的使用: |---------...

内存作用域

内存作用域

厉飞雨 阅读(10) 评论(0) 赞(2)

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

内存布局

内存布局

厉飞雨 阅读(9) 评论(0) 赞(0)

1. 内存分区 {#1-内存分区} ================= C代码经过预处理、编译、汇编、链接4步后生成一个二进制可执行程序。 在 Linux 下,可以在命令行中通过`size`命令查看二进制文件(可执行文件、静态库、动态库等)的大小和节(section)信息。 `size` 命令的基本语法是: |-----------|------------------...

结构体

结构体

厉飞雨 阅读(8) 评论(0) 赞(1)

1. 结构体的定义和使用 {#1-结构体的定义和使用} =========================== 在前面的章节中学习了数组,它描述的是一组具有相同类型数据的有序集合,用于处理大量相同类型的数据运算。 有时我们需要将不同类型的数据组合成一个有机的整体,如:一个学生有`学号/姓名/性别/年龄/地址`等属性。显然单独定义以上变量比较繁琐,数据不便于管理。 C语言中...

联合体和枚举

联合体和枚举

厉飞雨 阅读(8) 评论(0) 赞(2)

1. 联合体 {#1-联合体} =============== 在 C 语言中,联合体又叫共用体(Union)是一种特殊的数据类型,定义联合体的语法如下: |---------------------|---------------------------------------------------| | ``` 1 2 3 4 5 6 ``` | ``` union ...