C语言常见头文件汇总

目录:

C library:

  1. (assert.h) 2. (ctype.h) 3. (errno.h) 4. (fenv.h) 5. (float.h) 6.(inttypes.h) 7. (iso646.h) 8.(limits.h)
    9. (locale.h) 10. (math.h) 11. (setjmp.h) 12. (signal.h) 13. (stdarg.h) 14. (stdbool.h) 15.(stddef.h) 16. (stdint.h) 17.(stdio.h) 18. (stdlib.h) 19. (string.h) 20. (tgmath.h)21. (time.h) 22. (uchar.h) 23.(wchar.h) 24. (wctype.h)

1.(assert.h)

assert.h 定义一个可用作标准调试工具的宏函数:
assert      宏功能    评估断言(宏)

2. (ctype.h)

字符处理功能
该标头声明了一组用于分类和转换单个字符的函数。
功能:
这些函数的INT等效一个字符作为参数并返回一个INT,它们可以是另一个字符或表示布尔值的值:一个INT的值0手段假,以及INT从值不同0表示真。
(1)字符分类功能:
他们检查作为参数传递的字符是否属于某个类别:
isalnum  
   检查字符是否为字母数字(函数)
isalpha
   检查字符是否为字母(函数)
isblank 
   检查字符是否为空白(功能)
iscntrl
   检查字符是否为控制字符(功能)
isdigit
   检查字符是否为十进制数字(功能)
isgraph
   检查字符是否具有图形表示(功能)
islower
   检查字符是否为小写字母(功能)
isprint
   检查字符是否可打印(功能)
ispunct
   检查字符是否为标点符号(函数)
isspace
   检查字符是否为空格(功能)
isupper
   检查字符是否为大写字母(功能)
isxdigit
   检查字符是否为十六进制数字(函数)
(2)字符转换功能:
在字母大小写之间转换的两个函数:
tolower
   将大写字母转换为小写字母(函数)
toupper
   将小写字母转换为大写字母(函数)

3.(errno.h)

C错误
定义以下宏的C标头:
errno:    上一个错误编号(宏)
加上至少三个其他宏常量: 益登, 范围 和 序列号

4.(fenv.h)

浮点环境
    该标头声明一组函数和宏以及特定类型,以访问浮点环境。
    在浮点环境维持一系列状态标志和具体的控制模式。关于浮点环境的具体内容取决于实现,但是状态标志通常包括浮点异常及其相关信息,并且控制模式至少包括舍入方向。
功能:
(1)浮点异常:
feclearexcept
   清除浮点异常(函数)
feraiseexcept
   引发浮点异常(函数)
fegetexceptflag
   获取浮点异常标志(函数)
fesetexceptflag
   设置浮点异常标志(函数)
(2)取整方向:
fegetround
   获取舍入方向模式(功能)
fesetround
   设置舍入方向模式(功能)
(3)整个环境:
fegetenv
   获取浮点环境(函数)
fesetenv
   设置浮点环境(函数)
feholdexcept
   保留浮点异常(函数)
feupdateenv
   更新浮点环境(函数)
(4)其他:
fetestexcept
    测试浮点异常(功能)
(5)种类:
fenv_t
   浮点环境类型(type)
fexcept_t
   浮点异常类型(type)
(6)宏常量:
<1>浮点异常
FE_DIVBYZERO
   磁极错误异常(宏)
FE_INEXACT
   不精确的结果异常(宏)
FE_INVALID
   无效的参数异常(宏)
FE_OVERFLOW
   溢出范围错误异常(宏)
FE_UNDERFLOW
   下溢范围错误异常(宏)
FE_ALL_EXCEPT
   所有例外(宏)
<2>取整方向
FE_DOWNWARD
	向下舍入方向模式(宏)
FE_TONEAREST
	最接近的舍入方向模式(宏)
FE_TOWARDZERO
	向零舍入方向模式(宏)
FE_UPWARD
	向上舍入方向模式(宏)
<3>整个环境
FE_DFL_ENV
	默认环境(宏)
<4>pragma
FENV_ACCESS
	进入浮点环境(pragma)	

5.(float.h)

浮点类型的特征
此标头描述了特定系统和所使用的编译器实现的浮点类型的特征。

浮点数由四个元素组成:
信号:负号或非负号
一个基数(或基数):表示可以用一位数字表示的不同数字(二进制​​为2,十进制为10,十六进制为16,依此类推...)
有效数字(或尾数):这是上述基数的一系列数字。该系列中的位数是所谓的精度。
指数(也称为特征或小数位数):代表有效位数的偏移量,以下列方式影响该值:
浮点的值 = 有效位数x 基本指数及其对应的符号。
	宏常量
以下面板显示了此标头中定义的不同值的名称以及所有实现的最小值或最大值(每个实现可以将这些值设置为大于或小于指定的此最小值或最大值):
当一组宏时存在前缀FLT_, DBL_ 和 LDBL_,以 FLT_适用于该float类型,DBL_到double和一个LDBL_到long double。
    兼容性
FLT_EVAL_METHOD 和 DECIMAL_DIG 为符合1999年或以后的C标准(自2011年以来仅包括C ++标准:C ++ 11)的库定义。

在这里插入图片描述

6.(inttypes.h)

C整数类型
具有支持基于宽度的整数类型的库的标头。
包括此标头会自动包括<cstdint>(定义基于宽度的整数类型)。
巨集

以下宏扩展为包含 打印 要么 扫描说明符,适用于基于特定宽度的整数类型:

在这里插入图片描述

功能

此标头还声明了以下函数,这些函数将 cstdlib和 cwchar 对于 intmax_t:
在这里插入图片描述

种类

imaxdiv_t
类型返回 imaxdiv, 哪一个是 div_t 等价于 intmax_t。

7.(iso646.h)

ISO 646替代运算符
此标头为ISO646标准字符集不支持的C ++运算符定义了11个宏常量以及其他拼写形式:

在这里插入图片描述
在C ++中,保留字与这些宏具有相同的名称,并被视为其各自运算符的别名。因此,包含此标头在C ++中无效,并且对于使用备用名称也没有必要。

8.(limits.h)

整数类型的大小
该头文件定义了常量,并限制了所使用的特定系统和编译器实现的基本整数类型。

基本浮点类型的限制在<cfloat>(<float.h>)中定义。
特定于宽度的整数类型和其他typedef类型的限制在<cstdint>(<stdint.h>)中定义。
宏常量

在这里插入图片描述
兼容性
LLONG_MIN, LLONG_MAX 和 ULLONG_MAX 为符合1999年或以后的C标准(自2011年以来仅包括C ++标准:C ++ 11)的库定义。

9.(locale.h)

C本地化库
C语言支持特定于本地化的设置,例如特定于区域性的日期格式或特定于国家/地区的货币符号。

每个系统和特定的编译器实现都可以提供不同的语言环境选择(使用setlocale函数),但是对于任何C程序,至少有两个语言环境可供选择:
该"C"区域是最小的区域。这是一个相当中性的语言环境,在所有系统和编译器中都具有相同的设置,因此使用此语言环境的程序的确切结果是可以预测的。这是所有C程序默认使用的语言环境。
系统的默认语言环境(由空的C字符串指定:“”)。它是应用程序运行环境所提供的语言环境配置。通常,它包含比“ C”语言环境更多的本地化信息。

此标头声明结构 列夫 和功能 setlocale 和 语言环境,以及要与之配合使用的几个宏。这些用于定义特定于语言环境的信息。

请注意,语言环境配置会影响标准C库中许多功能的行为:
在<cstring>(<string.h>)中,函数Strcoll 和 strxfrm 受角色转换规则的影响。
在<cctype>(<ctype.h>)中,除等轴 和 isxdigit 受所选扩展字符集的影响。
在<cstdio>(<stdio.h>)中,格式化的输入/输出操作受数字格式设置中的字符转换规则和小数点字符集影响。
在<ctime>(<time.h>)中,函数strftime 受时间格式设置的影响。
在此标头中,它影响其函数返回的值 setlocale 和 语言环境。

还向程序提供了一些语言环境信息,以便以对语言环境敏感的方式更好地呈现其输出(语言环境)。
    种类
   struct lconv
      数值格式信息(类型)
    功能   
   setlocale
	 设置或检索语言环境(函数)
localeconv
	 获取数量的区域设置格式参数(函数)

10.(math.h)

C数字库
标头<cmath>声明了一组函数来计算常见的数学运算和转换:
    功能:
    三角函数
    cos          计算余弦(函数)
    sin          计算正弦(函数)
    tan          计算切线(函数)
    acos         计算反余弦(函数)
    asin         计算反正弦(函数)
    atan         计算反正切(函数)
    atan2        用两个参数计算反正切(函数)
    双曲函数
    cosh         计算双曲余弦(函数)
    sinh         计算双曲正弦(函数)
    tanh		 计算双曲正切(函数)
    acosh		 计算面积双曲余弦(函数)
    asinh		 计算面积双曲正弦(函数)
    atanh        计算区域双曲正切(函数)
    指数和对数函数
    exp			 计算指数函数(function)
    frexp        获取有效和指数(函数)
    ldexp        从有效数和指数(函数)生成值
    log          计算自然对数(函数)
    log10        计算常用对数(函数)
    modf         分为小数和整数部分(函数)
    exp2         计算二进制指数函数(function)
    expm1        计算指数减一(函数)
    ilogb        整数二进制对数(函数)
    log1p        计算对数加一(函数)
    log2         计算二进制对数(函数)
    logb         计算浮点基数对数(函数)
    scalbn       使用浮点基指数来缩放有效位数(函数)
    scalbln      使用浮点基指数(long)缩放有效位数(函数)
    power功能:
    pow          提升功率(功能)
    sqrt		 计算平方根(函数)
    cbrt		 计算立方根(函数)
    hypot        计算斜边(函数)
    误差和伽玛函数:
    erf          计算误差函数(function)
    erfc         计算互补误差函数(function)
    tgamma       计算伽玛函数(function)
    lgamma       计算对数伽马函数(function)
    舍入和余数函数:
    ceil         舍入值(函数)
    floor		 舍入值(函数)
    fmod         计算除法的余数(函数)
    trunc        截断值(函数)
    round 		 舍入到最接近(函数)
    lround       四舍五入到最接近的整数并转换为长整数(函数)
    llround      四舍五入到最接近的整数并转换为长整型(函数)
    rint         四舍五入到整数值(函数)
    lrint        舍入并转换为长整数(函数)
    llrint       舍入并转换为long long整数(函数)
    nearbyint    四舍五入到附近的整数值(函数)
    remainder    计算余数(IEC 60559)(功能)
    remquo       计算余数和商(函数)
    浮点运算功能:
    copysign     复制标志(功能)
    nan          生成安静的NaN (函数)
    nextafter    下一个可表示的值(函数)
    nexttoward   下一个可表示的值朝向精确值(函数)
    最小,最大,差函数:
    fdim         正差(函数)
    fmax         最大值(函数)
    fmin         最小值(函数)
    其他功能:
    fabs         计算绝对值(函数)
    abs          计算绝对值(函数)
    fma          乘加(函数)
        宏/函数:
         这些在C中作为宏实现,在C ++中作为函数实现:
分类宏/功能:
    fpclassify   分类浮点值(宏/函数)
    isfinite     是有限值(宏)
    isinf        是无穷大(宏/功能)
    isnan        不是数字(宏/函数)
    isnormal     正常(宏/功能)
    signbit      符号位(宏/功能)
比较宏/功能:
    isgreater    更大(宏)
    isgreaterequal  大于或等于(宏)
    isless       少(宏)
    islessequal  小于或等于(宏)
    islessgreater   小于或大于(宏)
    isunordered  无序(宏)
    宏常量:
    math_errhandling 错误处理(宏)
    INFINITY     无限(常数)
    NAN          非数字(常量)
    HUGE_VAL     巨大的价值(不变)
    HUGE_VALF    巨大的浮动价值
    HUGE_VALL    巨大的双精度值(常量)
    

此标头还定义了以下宏常量(自C99 / C ++ 11起):
在这里插入图片描述
种类

double_t     浮点类型(type)
float_t      浮点类型(type)

11.(setjmp.h)

非本地跳
通过此头文件提供的工具,程序员可以通过提供保留跳转环境的方法来跳过正常的函数调用并返回规则。

标头提供一个函数,具有函数形式和特定类型的宏:
      功能:
longjmp     跳远(功能)
      宏功能:
setjmp      保存呼叫环境以进行跳远(宏)
      种类:
jmp_buf     键入以保留信息以恢复调用环境()

12.(signal.h)

C库处理信号
一些正在运行的环境使用信号来通知正在运行的进程某些事件。这些事件可能与程序代码执行的错误(例如错误的算术运算)或异常情况(例如请求中断程序)有关。

信号通常表示程序已被要求终止或发生了不可恢复的错误的情况,因此处理信号可以执行终止前的清除操作或尝试以某种方式从错误中恢复。

在标准C库中设计的情况下,并非所有运行环境都需要生成自动信号,并且某些其他环境不仅会生成这些信号,还会生成更多特定的信号。但无论如何,所有通过调用函数raise显式生成的信号都将传递到其相应的信号处理程序。
    功能:
    signal     将功能设置为处理信号(功能)
    raise      产生信号(函数)
    种类:
sig_atomic_t   整体式(type)
    宏常量:

在这里插入图片描述

13.(stdarg.h)

可变参数处理
该标头定义了宏,以访问未命名参数列表中的各个参数,这些参数的编号和类型对于调用的函数是未知的。

一个函数可以通过在其常规命名参数后加逗号和三个点(,...)来接受数量不等的附加参数而无需相应的参数声明:

return_type function_name(parameter_declarations,...);
要访问这些附加参数,可以使用在此标头中声明的宏va_start,va_arg和va_end:
<1>首先,va_start将变量参数列表初始化为va_list。
<2>随后执行va_arg会产生附加参数的值,其顺序与传递给函数的顺序相同。
<3>最后,va_end必须在函数返回之前执行。
   种类:
va_list     键入以保存有关变量参数的信息()
   宏功能:
va_start    初始化变量参数列表(宏)
va_arg      检索下一个参数(宏)
va_end      结束使用变量参数列表(宏)
va_copy     复制变量参数列表(宏)

14.(stdbool.h)

布尔型
此标头在C中的目的是添加布尔类型以及true和false值作为宏定义。

在直接支持这些类型的C ++中,标头仅包含一个宏,可用于检查是否支持该类型:
  宏常量:

在这里插入图片描述

15.(stddef.h)

C标准定义
该头定义了某些类型的语言隐式生成或使用的几种类型。
种类:
ptrdiff_t       指针减法的结果(类型)
size_t          无符号整数类型(type)
max_align_t     标量对齐最宽的类型()
nullptr_t       空指针类型(C ++)(类型)
  在C中,此标头还包括wchar_t类型(宽字符类型)的声明,在C ++中,该声明是一种语言关键字,用于标识不同的基本类型(C ++中不需要标头)。
  宏功能:
offsetof        返回成员的偏移量(宏)
  宏常量:
NULL            空指针(宏)

16.(stdint.h)

整数类型
该标头定义了一组具有特定宽度要求的整数类型别名,以及指定其限制的宏和用于创建这些类型的值的宏函数。

 种类:
以下是基本整数类型或扩展整数类型的 typedef 。

在这里插入图片描述
其中一些typedef可能表示相同的类型。因此,函数重载不应依赖于它们的不同。

*请注意,某些类型是可选的(因此,不保证可移植性)。特定的库实现也可以使用其系统支持的其他宽度来定义其他类型。无论如何,如果定义了签名版本或未签名版本,则将同时定义签名和未签名版本。

巨集

(1)cstdint类型限制
在这里插入图片描述
其中N是8、16、32、64之一,或库支持的任何其他类型宽度。
仅定义与库支持的类型相对应的宏。

(2)其他类型的限制
其他标准整数类型的限制:
在这里插入图片描述
(3)类似函数的宏
这些类似于函数的宏扩展为整数常量,适用于初始化上述类型的对象:
在这里插入图片描述
例如:
INTMAX_C(2012) // expands to 2012LL or similar

17.(stdio.h)

C库执行输入/输出操作
输入和输出操作也可以在下,用来执行++ Ç 圣 ANDAR d 我 NPUT和ö安输出库(cstdio,被称为stdio.h中在C语言)。该库使用所谓的流与物理设备(例如键盘,打印机,终端或系统支持的任何其他类型的文件)一起操作。流是一种以统一方式与之交互的抽象。所有流都具有相似的属性,而与它们所关联的物理介质的各个特征无关。

流在cstdio库中作为指向FILE的指针处理对象。指向FILE对象的指针唯一地标识一个流,并在涉及该流的操作中用作参数。

还存在三个标准流:stdin,stdout和stderr,它们是使用该库为所有程序自动创建和打开的。

(1)流属性:
流具有一些属性,这些属性定义可以在它们上使用哪些函数以及这些函数如何处理通过它们输入或输出的数据。其中的大多数属性是在使用fopen函数将流与文件(打开的文件)关联时定义的:

读/写访问
    指定流对它们关联的物理介质是否具有读或写访问权限(或两者都有)。
文字/二进制
    文本流被认为代表一组文本行,每个文本行以换行符结束。根据运行应用程序的环境,文本流可能会发生某些字符转换,以使某些特殊字符适应环境的文本文件规范。另一方面,二进制流是在不进行翻译的情况下从物理介质写入或读取的字符序列,与读取或写入该流的字符一一对应。
缓冲
    缓冲区是一个内存块,在对数据进行物理读取或写入关联文件或设备之前,先在其中累积数据。流可以完全缓冲,行缓冲或不缓冲。在完全缓冲的流上,当缓冲区已满时,将读取/写入数据;在行缓冲的流上,当遇到换行符时会发生这种情况;而在非缓冲流上,则应尽快读取/写入数据。
取向
    打开时,流没有方向。对它们执行输入/输出操作后,它们将变为面向字节的或面向宽的,这取决于所执行的操作(通常,<cstdio>中定义的功能是面向字节的,而<cwchar>中的功能是面向字节的)面向广泛)。有关更多信息,请参见cwchar。
(2)指标:
流具有某些内部指示器,这些指示器指定其当前状态并影响对其执行的某些输入和输出操作的行为:
错误指示
      当与流有关的操作中发生错误时,设置此指示器。可以使用ferror函数检查该指示器,并且可以通过调用clearerr,freopen或rewind来重置该指示器。
文件结束指示符
      设置时,指示对流执行的最后读取或写入操作已到达文件末尾。可以使用feof函数进行检查,也可以通过调用clearerr或freopen或通过调用任何重新定位函数(rewind,fseek和fsetpos)将其重置。
位置指示器
      它是每个流的内部指针,指向下一个I / O操作中要读取或写入的下一个字符。它的值可以通过ftell和fgetpos函数获得,并且可以使用重定位函数rewind,fseek和fsetpos进行更改。
      功能:
   <1> 文件操作:
remove          删除文件(功能)
rename          重命名文件(功能)
tmpfile         打开一个临时文件(函数)
tmpnam          生成临时文件名(函数)
   <2>档案存取:
fclose          关闭文件(功能)
fflush          冲洗流(功能)
fopen           打开文件(功能)
freopen         重新打开具有不同文件或模式(功能)的流
Setbuf          设置流缓冲区(函数)
setvbuf         更改流缓冲(功能)
<3>格式化的输入/输出:
fprintf         将格式化的数据写入流(函数)
fscanf          从流中读取格式化的数据(函数)
printf          将格式化的数据打印到标准输出(功能)
scanf           从stdin读取格式化的数据(函数)
snprintf        将格式化的输出写到大小缓冲区(函数)
sprintf         将格式化的数据写入字符串(函数)
sscanf          从字符串读取格式化的数据(函数)
vfprintf        将可变参数列表中的格式化数据写入流(函数)
vfscanf         将流中的格式化数据读取到变量参数列表(函数)中
vprintf         将格式化的数据从变量参数列表打印到stdout (函数)
vscanf          将格式化的数据读入变量参数列表(函数)
vsnprintf       将格式化的数据从变量参数列表写入大小已设置的缓冲区(函数)
vsprintf        将变量参数列表中的格式化数据写入字符串(函数)
vsscanf         将格式化的数据从字符串读入变量参数列表(函数)
<4>字符输入/输出:
fgetc           从流中获取字符(函数)
fgets           从流中获取字符串(函数)
fputc           将字符写入流(函数)
fputs           将字符串写入流(函数)
getc            从流中获取字符(函数)
getchar         从stdin获取字符(函数)
gets            从stdin获取字符串(函数)
putc            将字符写入流(函数)
Putchar         将字符写入标准输出(函数)
puts            将字符串写入stdout (函数)
ungetc          从流中取消字符(功能)
<5>直接输入/输出:
fread           从流中读取数据块(函数)
fwrite          将数据块写入流(函数)
<6>文件位置:
fgetpos         获取流中的当前位置(函数)
fseek           重新定位流位置指示器(功能)
fsetpos         设置流的位置指示器(功能)
ftell           获取流中的当前位置(函数)
rewind          将流的位置设置为开头(函数)
<7>错误处理:
clearerr        清除错误指示灯(功能)
feof            检查文件结束指示器(功能)
ferror			检查错误指示灯(功能)
perror			打印错误信息(功能)
      巨集:
BUFSIZ          缓冲区大小(恒定)
EOF    			文件结束(常量)
FILENAME_MAX    文件名的最大长度(常量)
FOPEN_MAX       同时开放流的潜在限制(恒定)
L_tmpnam        临时文件名的最小长度(常量)
NULL     		空指针(宏)
TMP_MAX         临时文件数(常量)
此外:_IOFBF,_IOLBF,_IONBF(使用setvbuf用来)
和SEEK_CUR,SEEK_END和SEEK_SET(与用于FSEEK)。
      种类:
FILE            包含控制流的信息的对象(类型)
fpos_t          包含指定文件中位置的信息的对象(类型)
size_t          无符号整数类型(type)

18.(stdlib.h)

C标准通用工具库
该头定义了几个通用功能,包括动态内存管理,随机数生成,与环境的通信,整数算术,搜索,排序和转换。
      功能:
(1)字符串转换:
atof          将字符串转换为双精度(function)
atoi          将字符串转换为整数(函数)
Atol		  将字符串转换为长整数(函数)
atoll         将字符串转换为long long整数(函数)
strtod		  将字符串转换为双精度(function)
strtof 		  将字符串转换为浮点数(函数)
strtol        将字符串转换为长整数(函数)
strtold       将字符串转换为long double (function)
Strtoll       将字符串转换为long long整数(函数)
strtoul       将字符串转换为无符号长整数(函数)
strtoull      将字符串转换为无符号long long整数(函数)
(2)伪随机序列生成:
rand          生成随机数(函数)
srand		  初始化随机数生成器(函数)
(3)动态内存管理:
calloc        分配和零初始化数组(函数)
free          取消分配内存块(函数)
malloc        分配存储块(功能)
realloc       重新分配内存块(函数)
(4)环境:
abort         中止当前过程(功能)
atexit        设置要在退出时执行的功能(功能)
at_quick_exit 设置要在快速退出时执行的功能(功能)
exit  		  终止调用过程(函数)
getenv        获取环境字符串(函数)
quick_exit    快速终止呼叫过程(功能)
system        执行系统命令(功能)
_Exit         终止调用过程(函数)
(5)搜索和排序:
bsearch       数组中的二进制搜索(函数)
qsort         对数组的元素进行排序(函数)
(6)整数算术:
abs           绝对值(函数)
div           积分除法(功能)
labs          绝对值(函数)
ldiv          积分除法(功能)
llabs         绝对值(函数)
lldiv         积分除法(功能)
(7)多字节字符:
mblen         获取多字节字符的长度(函数)
mbtowc        将多字节序列转换为宽字符(函数)
wctomb        将宽字符转换为多字节序列(函数)
(8)多字节字符串:
mbstowcs	  将多字节字符串转换为宽字符字符串(函数)
wcstombs      将宽字符字符串转换为多字节字符串(函数)

    宏常量:
EXIT_FAILURE  故障终止代码(宏)
EXIT_SUCCESS  成功终止代码(宏)
MB_CUR_MAX    多字节字符的最大大小(宏)
NULL		  空指针(宏)
RAND_MAX      rand返回的最大值(宏)
    种类:
div_t		  div返回的结构(类型)
ldiv_t		  ldiv返回的结构(类型)
lldiv_t 	  lldiv返回的结构(类型)
size_t		  无符号整数类型(type)

19.(string.h)

C字符串
该头文件定义了几个函数来操纵C字符串和数组。
        功能:
(1)复制中:
 Memcpy		  复制内存块(功能)
memmove       移动内存块(功能)
strcpy		  复制字符串(函数)
strncpy       复制字符串中的字符(函数)
(2)串联:
strcat        连接字符串(函数)
Strncat		  附加字符串中的字符(功能)
(3)比较:
memcmp		  比较两个内存块(函数)
strcmp        比较两个字符串(函数)
Strcoll		  使用语言环境比较两个字符串(函数)
strncmp		  比较两个字符串的字符(函数)
strxfrm		  使用语言环境转换字符串(函数
(4)搜索:
memchr		  在内存块中找到字符(功能)
strchr		  找到字符串中第一个出现的字符(函数)
strcspn		  获取跨度直到字符串中的字符(函数)
strpbrk		  找到字符串中的字符(函数)
strrchr		  找到字符串中最后一次出现的字符(函数)
strspn		  获取字符串中字符集的范围(函数)
strstr        找到子字符串(函数)
strtok        将字符串拆分为标记(函数)

其他:
memset		  填充内存块(功能)
strerror      获取错误消息字符串的指针(函数)
strlen        获取字符串长度(函数)
    巨集:
NULL          空指针(宏)
   种类:
size_t        无符号整数类型(type)

20.(tgmath.h)

此标头定义了与中的函数相对应的宏函数<math.h>,但可以将其他非浮点类型用作参数:该

函数中的每个函数<math.h>至少应将一个double作为参数(模组)被定义<tgmath.h>为具有相同语义但使用通用参数的宏:而是

为这些通用参数提供的每个整数类型的参数都强制转换为double;的参数浮点类型而没有转化中使用(如直接float,double或long double)。

此标头会自动包含<math.h>和<complex.h>:如果类型通用函数存在于该函数中(带有字符前缀),则该类型泛型函数也可以采用复杂值。<complex.h>"c"

21.(time.h)

C时间库
该头文件包含用于获取和操作日期和时间信息的函数的定义。
     功能:
(1)时间操纵:
clock           时钟程序(功能)
difftime		两次返回差(函数)
mktime 			将tm结构转换为time_t (函数)
time			获取当前时间(函数)
(2)转换次数:
asctime         将tm结构转换为字符串(函数)
ctime			将time_t值转换为字符串(函数)
gmtime			将time_t转换为tm作为UTC时间(函数)
localtime       将time_t转换为本地时间(函数)
strftime		将时间格式化为字符串(函数)
    宏常量:
CLOCKS_PER_SEC  每秒时钟滴答声(宏)
NULL            空指针(宏)
    :类型
clock_t			时钟类型(type)
size_t			无符号整数类型(type)
time_t			时间类型(type)
struct tm		时间结构(类型)

22.(uchar.h)

Unicode字符
此标头提供对16位和32位字符的支持,适合使用UTF-16和UTF-32进行编码。

      种类:
在C中,此标头定义两个宏:char16_t和char32_t,它们映射到适当大小的无符号整数类型(分别与uint_least16_t和uint_least32_t相同)。

在C ++中,char16_t和char32_t是基本类型(因此,此标头未在C ++中定义此类宏)。
     功能
c16rtomb		将16位字符转换为多字节序列(函数)
c32rtomb		将32位字符转换为多字节序列(函数)
mbrtoc16		将多字节序列转换为16位字符(函数)
mbrtoc32		将多字节序列转换为32位字符(函数)
兼容性
此标头由扩展C99的技术报告首次在C中引入,并得到最新的C和C ++标准(均于2011年发布)完全支持。
      巨集:
在C ++中,此标头定义了以下宏:

在这里插入图片描述

23.(wchar.h)

宽字符
该头文件定义了几个用于C宽字符串的函数。
    功能:
(1)输入/输出:(大多数为<cstdio>函数的宽版本)
fgetwc		从流中获取宽字符(函数)
get			从流中获取宽字符串(函数)
fputwc		将宽字符写入流(函数)
fwide		将宽字符串写入流(函数)
fwide       流方向(功能)
fwprintf    将格式化的数据写入流(函数)
fwscanf     从流中读取格式化的数据(函数)
getwc       从流中获取宽字符(函数)
getwchar	从stdin获取宽字符(函数)
putwc		将宽字符写入流(函数)
putwchar	将宽字符写入标准输出(函数)
swprintf	将格式化的数据写入宽字符串(函数)
swscanf		从字符串读取格式化的数据(函数)
ungetwc		从流中删除宽字符(功能)
vfwprintf	将可变参数列表中的格式化数据写入流(函数)
vfwscanf 	将流中的格式化数据读取到变量参数列表(函数)中
vswprintf 	将格式化的数据从变量参数列表写入大小已设置的缓冲区(函数)
vswscanf	将宽字符串中的格式化数据读入变量参数列表(函数)
vwprintf	将格式化的数据从变量参数列表打印到stdout (函数)
vwscanf		将格式化的数据读入变量参数列表(函数)
wprintf		将格式化的数据打印到标准输出(功能)
wscanf		从stdin读取格式化的数据(函数)
(2)通用实用程序:(<cstdlib>函数的宽版本)
wcstod		将宽字符串转换为双精度(函数)
wcstof 		将宽字符串转换为浮点数(函数)
wcstol      将宽字符串转换为长整数(函数)
wcstold 	将宽字符串转换为长整数(函数)
wcstoll		将宽字符串转换为长整型(函数)
wcstoul		将宽字符串转换为无符号长整数(函数)
wcstoull 	将宽字符串转换为无符号的long long整数(函数)
(3) 字符/字符串转换:(主要是<cstdlib>函数的扩展版本)
btowc		将单字节字符转换为宽字符(函数)
mbrlen		获取多字节字符的长度(函数)
mbrtowc		将多字节序列转换为宽字符(函数)
mbsinit		检查初始转换状态(功能)
mbsrtowcs	将多字节字符串转换为宽字符字符串(函数)
wcrtomb		将宽字符转换为多字节序列(函数)
wctob		将宽字符转换为单字节(函数)
wcsrtombs	将宽字符字符串转换为多字节字符串(函数)
(4)字符串:(<cstring>函数的宽版本)
wcscat		连接宽字符串(函数)
wcschr		在宽字符串中找到第一个出现的字符(函数)
wcscmp		比较两个字符串(函数)
wcscoll		使用语言环境比较两个宽字符串(函数)
wcscpy		复制宽字符串(函数)
wcscspn		获取跨度直到宽字符串中的字符(函数)
wcslen		获得宽的字符串长度(函数)
wcsncat		附加宽字符串中的字符(功能)
wcsncmp		比较两个宽字符串的字符(函数)
wcsncpy		复制宽字符串中的字符(功能)
wcspbrk		查找宽字符串中的字符(功能)
wcsrchr		在宽字符串中找到最后出现的字符(函数)
wcsspn		获取宽字符串中字符集的范围(函数)
wcsstr		找到宽字符串的子字符串(函数)
wcstok		将宽字符串拆分为标记(函数)
wcsxfrm		使用语言环境转换宽字符串(函数)
wmemchr		在宽字符块中查找字符(函数)
wmemcmp		比较两个宽字符块(功能)
wmemcpy		复制宽字符块(功能)
wmemmove	移动宽字符块(功能)
wmemset		填充宽字符数组(函数)
(5)时间:(<ctime>函数的宽泛版本)
wcsftime    将时间格式化为宽字符串(函数)
      种类:
mbstate_t	多字节转换状态(类型)
size_t		无符号整数类型(type)
struct tm	时间结构(类型)
wchar_t		宽字符(类型)
wint_t		宽int型(type)
      宏常量:
NULL		空指针(宏)
WCHAR_MAX	wchar_t的最大值(常量)
WCHAR_MIN	wchar_t的最小值(常量)
WEOF		宽文件结尾(常量)

24.(wctype.h)

宽字符类型
此标头声明了一组用于分类和转换单个宽字符的函数。

有关如何使用“ C”语言环境对标准ASCII字符集进行分类的更多信息,请参见<cctype>。

       功能:
(1)字符分类功能
他们检查作为参数传递的字符是否属于某个类别:
Iswalnum		检查宽字符是否为字母数字(函数)
iswalpha		检查宽字符是否为字母(功能)
iswblank 		检查宽字符是否为空白(功能)
iswcntrl		检查宽字符是否为控制字符(功能)
iswdigit		检查宽字符是否为十进制数字(功能)
iswgraph		检查宽字符是否具有图形表示(功能)
iswlower		检查宽字符是否为小写字母(功能)
iswprint		检查是否可以打印宽字符(功能)
iswpunct		检查宽字符是否为标点字符(功能)
iswspace		检查宽字符是否为空格(功能)
iswupper		检查宽字符是否为大写字母(功能)
iswxdigit		检查宽字符是否为十六进制数字(函数)
(2)字符转换功能
在字母大小写之间转换的两个函数:
towlower		将大写的宽字符转换为小写(函数)
towupper		将小写的宽字符转换为大写(函数)
(3)可扩展的分类/转换功能
iswctype		检查宽字符是否具有属性(功能)
towctrans		使用转换进行转换(函数)
wctrans			返回字符转换(函数)
wctype          返回字符属性(函数)
       种类:
wctrans_t		宽字符转换(类型)
wctype_t		宽字符类型(type)
wint_t			宽字符整数型(type)

       常数:
WEOF            宽文件结尾(常量)
原创文章 11 获赞 20 访问量 357

猜你喜欢

转载自blog.csdn.net/weixin_46078890/article/details/106078080
今日推荐