目录
一 C标准库概述
标准库的组成与分类
C标准库是C语言的核心组成部分之一,为C程序提供了大量预定义的函数、数据类型、宏和常量,极大地扩展了C语言的功能,简化了常见任务的实现。标准库按照功能大致可分为以下几个类别:
-
系统接口:
- 头文件
<stdio.h>
:提供了与标准输入/输出设备(如键盘、显示器、文件)交互的函数,如printf
、scanf
、fopen
、fclose
等。 - 头文件
<stdlib.h>
:包含了与系统相关的通用函数,如内存分配(malloc
、calloc
、realloc
、free
)、随机数生成(rand
、srand
)、程序退出(exit
、abort
)等。 - 头文件
<unistd.h>
(Unix/Linux系统):包含了Unix系统特有的系统调用接口,如文件I/O、进程控制、信号处理等。
- 头文件
-
通用工具:
- 头文件
<assert.h>
:提供了assert
宏,用于在调试阶段检查程序中的断言条件,有助于发现逻辑错误。 - 头文件
<string.h>
:包含了处理字符数组(C语言中的字符串)的函数,如strlen
、strcpy
、strcat
、strcmp
、strstr
等。 - 头文件
<ctype.h>
:提供了字符分类和转换函数,如判断字符是否为字母、数字、空格等,以及进行大小写转换。
- 头文件
-
输入输出:
- 头文件
<stdio.h>
:已经提及,提供了丰富的标准I/O函数,如文件读写、格式化输出等。
- 头文件
-
字符串处理:
- 头文件
<string.h>
:如前所述,包含了字符串操作的相关函数。
- 头文件
-
内存管理:
- 头文件
<stdlib.h>
:包含内存分配与释放函数,如malloc
、calloc
、realloc
、free
,用于动态管理程序数据区的内存。
- 头文件
-
数学函数:
- 头文件
<math.h>
:提供了丰富的数学函数,如平方根(sqrt
)、指数(exp
)、对数(log
)、三角函数(sin
、cos
、tan
)等,以及常数π(M_PI
)和其他数学常数。
- 头文件
-
时间与日期:
- 头文件
<time.h>
:提供了获取和操作时间、日期的函数,如获取当前时间(time
)、格式化时间(strftime
)、解析时间字符串(strptime
)等,以及表示时间的结构体struct tm
。
- 头文件