第二十三章、C 语言标准库
1. C 语言标准库简介
本章将对 C 语言常用标准库函数进行讲解。C 语言的标准库是编译器自带的库,其内部统一定义了一组函数和宏,方便开发人员使用。在不同版本的编译器里都会存在这些函数,并且有统一的调用接口,具有可移植性。
在 Linux 操作系统下 C 标准款对应的静态库文件是 libc.a,动态库文件是 libc.so,一般的编译器在编译时都会对这些库进行自动链接(不需要指定链接选项)。
在 C 标准库中,每个库函数均在某个头文件中声明,其类型包含函数原型。使用者仅通过 #include 预处理指令可使其内容可用。头文件声明了一组相关的函数,以及为便于使用而需要的任何必要类型和附加宏。
标准库的头文件如下:
<assert.h> <math.h> <stdlib.h>
<complex.h> <setjmp.h> <stdnoreturn.h>
<ctype.h> <signal.h> <string.h>
<errno.h> <stdalign.h> <tgmath.h>
<fenv.h> <stdarg.h> <threads.h>
<float.h> <stdatomic.h> <time.h>
<inttypes.h> <stdbool.h> <uchar.h>
<iso646.h> <stddef.h> <wchar.h>
<limits.h> <stdint.h> <wctype.h>
<locale.h> <stdio.h>
C 语言的标准库中常用的内容
- 标准输入/输出(stdio.h)
fopen、fclose、fread、fscanf、printf、scanf等。
- 字符串处理(string.h)
strcat、strcat、memset、memcpy等。
- 数学计算(math.h)
sin、cos等。
- 内存管理、类型转换、随机数等(stdlib.h)
malloc、free、atoi、atof、rand、srand等。
- 时间函数(time.h)
time、gmtime、mktime、ctime、localtime等。
- 常用常量定义(stddef.h)
- 如:
NULL、size_t等。
- 如:
- 字符分类和转换(ctype.h)
isdigit、isspace、isalpha等。
- 错误处理(errno.h)
extern int errno、perror等。
- 整型限制(limits.h)
INT_MAX、INT_MIN、LONG_MAX、LONG_MIN等。
实验
在已经安装 C 语言编译器的电脑上找到上述 C 语言标准款的头文件,然后查看头文件的内容。