头文件

<ctgmath> (tgmath.h)

类型泛型数学
此头文件定义了与 <math.h> 中的函数相对应的宏函数,但这些宏函数可以接受其他非浮点类型作为参数。

<math.h> 中每个至少接受一个 double 作为参数的函数(modf 除外),都在 <tgmath.h> 中被定义为一个具有相同语义但接受泛型参数的宏。

为这些泛型参数提供的每个整数类型的参数都会被转换为 double浮点类型的参数则不经转换直接使用(即直接作为 floatdoublelong double)。

此头文件会自动包含 <math.h><complex.h>:如果函数存在于 <complex.h> 中(以 "c" 字符为前缀),则类型泛型函数也可以接受复数值。
此头文件只是简单地包含了 <cmath><ccomplex>

在 C++ 中,这个 C 头文件所提供的功能已由 <cmath><ccomplex> 中的适当重载提供了。