C标准头文件
参考链接:
C 标准库 – <limits.h> | 菜鸟教程
头文件是扩展名为 .h 的文件,包含了 C 函数声明和宏定义,被多个源文件中引用共享。
有两种类型的头文件:程序员编写的头文件和编译器自带的头文件。
这里讲的标准头文件指编译器自带的头文件
在程序中要使用头文件,需要使用 C 预处理指令 #include
来引用它。前面我们已经看过 stdio.h 头文件,它是编译器自带的头文件。
引用头文件相当于复制头文件的内容,但是我们不会直接在源文件中复制头文件的内容,因为这么做很容易出错,特别在程序是由多个源文件组成的时候。
[[C头文件asset.h]]
C 标准库的 assert.h头文件提供了一个名为 assert 的宏,它可用于验证程序做出的假设,并在假设为假时输出诊断消息。
[[C头文件ctype.h]]
C 标准库的 ctype.h 头文件提供了一些函数,可用于测试和映射字符。
[[C头文件errno.h]]
C 标准库的 errno.h 头文件定义了整数变量 errno,它是通过系统调用设置的,在错误事件中的某些库函数表明了什么发生了错误。该宏扩展为类型为 int 的可更改的左值,因此它可以被一个程序读取和修改。在程序启动时,errno 设置为零,C 标准库中的特定函数修改它的值为一些非零值以表示某些类型的错误。您也可以在适当的时候修改它的值或重置为零。errno.h 头文件定义了一系列表示不同错误代码的宏,这些宏应扩展为类型为 int 的整数常量表达式。
[[C头文件float.h]]
C 标准库的 float.h 头文件包含了一组与浮点值相关的依赖于平台的常量。这些常量是由 ANSI C 提出的,这让程序更具有可移植性。
[[C头文件limits.h]]
limits.h 头文件决定了各种变量类型的各种属性。定义在该头文件中的宏限制了各种变量类型(比如 char、int 和 long)的值。这些限制指定了变量不能存储任何超出这些限制的值,例如一个无符号可以存储的最大值是 255。
[[C头文件locale.h]]
locale.h 头文件定义了特定地域的设置,比如日期格式和货币符号。接下来我们将介绍一些宏,以及一个重要的结构 struct lconv 和两个重要的函数。
[[C头文件math.h]]
math.h 头文件定义了各种数学函数和一个宏。在这个库中所有可用的功能都带有一个 double 类型的参数,且都返回 double 类型的结果。
[[C头文件stdio.h]]
standard input & output
stdio .h 头文件定义了三个变量类型、一些宏和各种函数来执行输入和输出。
[[C头文件signal.h]]
signal.h 头文件定义了一个变量类型 sig_atomic_t、两个函数调用和一些宏来处理程序执行期间报告的不同信号。
[[C头文件time.h]]
time.h 头文件定义了四个变量类型、两个宏和各种操作日期和时间的函数。
[[C头文件stddef.h]]
standard define标准定义
定义有ptrdiff_t、size_t、wchar_t、NULL和offsetof
stddef .h 头文件定义了各种变量类型和宏。这些定义中的大部分也出现在其它头文件中。
[[C头文件stdlib.h]]
standard library
stdlib .h 头文件定义了四个变量类型、一些宏和各种通用工具函数。
[[C头文件string.h]]
string .h 头文件定义了一个变量类型、一个宏和各种操作字符数组的函数。
[[C头文件stdarg.h]]
stdarg.h 头文件定义了一个变量类型 va_list 和三个宏,这三个宏可用于在参数个数未知(即参数个数可变)时获取函数中的参数。可变参数的函数通在参数列表的末尾是使用省略号(,…)定义的。
[[C头文件setjmp.h]]
setjmp.h 头文件定义了宏 setjmp()、函数 longjmp() 和变量类型 jmp_buf,该变量类型会绕过正常的函数调用和返回规则。
上面的15种头文件是现在绝大部分编译器都自带的头文件,有些编译器的使用更加新的C语言标准,还会额外自带写其它的头文件,在此不涉及