C
数值 | Numerics

Common mathematical functions

Common mathematical functions

功能

| Defined in header <stdlib.h> |

|:----|

| abslabsllabs(C99)| 计算整数值(| x |)(函数)|的绝对值

| divldivlldiv(C99)| 计算整数除法(函数)|的商和余数

| 在头文件<inttypes.h> |中定义

| imaxabs(C99)| 计算整数值(| x |)(函数)|的绝对值

| imaxdiv(C99)| 计算整数除法(函数)|的商和余数

| 在头文件<math.h> |中定义

| 基本操作|

| fabsfabsffabsl(C99)(C99)| 计算浮点值(| x |)(函数)|的绝对值

| fmodfmodffmodl(C99)(C99)| 计算浮点除法操作(函数)|的剩余部分

| 余额余额本地人(C99)(C99)(C99)| 计算浮点除法运算(函数)|的有符号的余数

| remquoremquofremquol(C99)(C99)(C99)| 计算带符号的余数以及除法运算(函数)|的最后三位

| fmafmaffmal(C99)(C99)(C99)| 计算融合的乘加运算(函数)|

| fmaxfmaxffmax1(C99)(C99)(C99)| 决定两个浮点值(函数)|中较大的一个

| fminfminffminl(C99)(C99)(C99)| 确定两个浮点值(函数)|中的较小者

| fdimfdimffdiml(C99)(C99)(C99)| 确定两个浮点值(max(0,xy))(函数)|的正差

| nannanfnanl(C99)(C99)(C99)| 返回一个NaN(非数字)(函数)|

| 指数函数|

| expexpfexpl(C99)(C99)| 计算e给定的功率(ex)(函数)|

| exp2exp2fexp2l(C99)(C99)(C99)| 计算2提高到给定的功率(2x)(函数)|

| expm1expm1fexpm1l(C99)(C99)(C99)| 计算e增加到给定的权力,减去一(ex-1)(函数)|

| loglogflogl(C99)(C99)| 计算自然(基-e)对数(ln(x))(函数)|

| log10log10flog10l(C99)(C99)| 计算普通(基数为10)的对数(log10(x))(函数)|

| log2log2flog2l(C99)(C99)(C99)| 计算基数2对数(log2(x))(函数)|

| log1plog1pflog1pl(C99)(C99)(C99)| 计算1加上给定数字(ln(1 + x))(函数)的自然(基e)对数。

| 电源功能|

| powpowfpowl(C99)(C99)| 计算一个给定的功率(xy)(函数)|的数字

| sqrtsqrtfsqrtl(C99)(C99)| 计算平方根(√x)(函数)|

| cbrtcbrtfcbrtl(C99)(C99)(C99)| 计算立方根(3√x)(函数)|

| hypothypotfypotl(C99)(C99)(C99)| 计算两个给定数字(√X2+ Y2)(函数)|的平方和的平方根

| 三角函数|

| sinsinfsinl(C99)(C99)| 计算正弦(sin(x))(函数)|

| coscosfcosl(C99)(C99)计算余弦(cos(x))(函数)

| tantanftanl(C99)(C99)| 计算tangent(tan(x))(function)|

| asinasinfasinl(C99)(C99)| 计算反正弦(arcsin(x))(函数)|

| acosacosfacosl(C99)(C99)| 计算反余弦(arccos(x))(函数)|

| atanatanfatanl(C99)(C99)| 计算反正切(arctan(x))(function)|

| atan2atan2fatan2l(C99)(C99)| 计算反正切,使用符号来确定象限(函数)|

| 双曲函数|

| sinhsinhfsinhl(C99)(C99)| 计算双曲正弦函数(sh(x))(函数)|

| coshcoshfcoshl(C99)(C99)| 计算双曲余弦(ch(x))(函数)|

| tanhtanhftanhl(C99)(C99)| 计算双曲正切(函数)|

| asinhasinhfasinhl(C99)(C99)(C99)| 计算反双曲正弦(arsinh(x))(函数)|

| acoshacoshfacoshl(C99)(C99)(C99)| 计算反双曲余弦(arcosh(x))(函数)|

| atanhatanhfatanhl(C99)(C99)(C99)| 计算反双曲正切(artanh(x))(function)|

| 错误和伽马函数|

| erferfferfl(C99)(C99)(C99)| 计算错误函数(函数)|

| erfcerfcferfcl(C99)(C99)(C99)| 计算互补误差函数(函数)|

| tgammatgammaftgammal(C99)(C99)(C99)| 计算伽马函数(函数)|

| lgammalgammaflgammal(C99)(C99)(C99)| 计算伽马函数(函数)|的自然(基-e)对数

| 最接近的整数浮点操作|

| ceilceilfceill(C99)(C99)| 计算不小于给定值(函数)|的最小整数

| floorfloorffloorl(C99)(C99)| 计算不大于给定值(函数)|的最大整数

| trunctruncftruncl(C99)(C99)(C99)| 取整数不大于给定值(函数)|的最大整数

| roundlroundllround(C99)(C99)(C99)| 舍入到最接近的整数,在半路情况下(函数)|从零舍入

| (C99)(C99)(C99)| 使用当前舍入模式(函数)|舍入为整数

| (C99)(C99)(C99)(C99)(C99)(C99)(C99)(C99)(C99)如果结果不同(函数)|,则舍入为使用当前舍入模式的整数

| 浮点操作函数|

| frexpfrexpffrexpl(C99)(C99)| 将数字分解为有效数和2(函数)|的一个幂

| ldexpldexpfldexpl(C99)(C99)| 将一个数字乘以2,得到一个幂(函数)|

| modfmodffmodfl(C99)(C99)| 将数字分解为整数和小数部分(函数)|

| (C99)(C99)(C99)(C99)(C99)(C99)| 有效计算FLT_RADIX提升到功率(函数)|的次数

| ilogbilogbfilogbl(C99)(C99)(C99)| 提取给定数字(函数)|的指数

| logblogbflogbl(C99)(C99)(C99)| 提取给定数字(函数)|的指数

| (C99)(C99)(C99)(C99)(C99)(C99)|下一个下一个下一个下一个下一个下一个 确定朝向给定值(函数)|的下一个可表示的浮点值

| copysigncopysignfcopysignl(C99)(C99)(C99)| 产生具有给定值的量值和另一个给定值(函数)|的符号的值

| 分类和比较|

| fpclassify(C99)| 分类给定的浮点值(函数)|

| isfinite(C99)| 检查给定的数字是否具有有限的值(函数)|

| isinf(C99)| 检查给定的数字是否是无限的(函数)|

| isnan(C99)| 检查给定的数字是否是NaN(函数)|

| 异常(C99)| 检查给定的数字是否正常(功能)|

| signbit(C99)| 检查给定的数字是否定的(功能)|

| isgreater(C99)| 检查第一个浮点参数是否大于第二个(函数)|

| isgreaterequal(C99)| 检查第一个浮点参数是否大于或等于第二个(函数)|

| isless(C99)| 检查第一个浮点参数是否小于第二个(函数)|

| islessequal(C99)| 检查第一个浮点参数是否小于或等于第二个(函数)|

| islessgreater(C99)| 检查第一个浮点参数是小于还是大于第二个(函数)|

| isunordered(C99)| 检查两个浮点值是否无序(函数)|

类型

| 在头文件<stdlib.h> |中定义

|:----|

| div_t | 结构类型,返回div函数(typedef)|

| ldiv_t | 结构类型,返回ldiv函数(typedef)|

| lldiv_t(C99)| 结构类型,返回lldiv函数(typedef)|

| 在头文件<inttypes.h> |中定义

| imaxdiv_t(C99)| 结构类型,返回的imaxdiv函数(typedef)|

| 在头文件<math.h> |中定义

| float_t(C99)| 最有效的浮点类型至少和float(typedef)|一样宽

| double_t(C99)| 最有效的浮点类型至少与double(typedef)|一样宽

宏常量

| 在头文件<math.h> |中定义

|:----|

| HUGE_VALFHUGE_VALHUGE_VALL(C99)(C99)| 表示值太大,无法用float,double和long double分别表示(无穷大)(宏常量)|

| INFINITY(C99)| 评估为正无穷大或保证溢出float(宏常量)|的值

| NAN(C99)| 评估为float(宏常量)|类型的安静NaN

|FP_FAST_FMAFFP_FAST_FMAFP_FAST_FMAL(C99)(C99)(C99)| 表示fma函数的执行速度通常与双操作数(宏常量)的乘法和加法相同或更快。

| FP_ILOGB0FP_ILOGBNAN(C99)(C99)| 如果x分别为零或NaN(宏常数)|,则评估为ilogb(x)

|math_errhandlingMATH_ERRNOMATH_ERREXCEPT(C99)(C99)(C99)| 定义常用数学函数(宏常量)|使用的错误处理机制

| 分类|

| FP_NORMALFP_SUBNORMALFP_ZEROFP_INFINITEFP_NAN(C99)(C99)(C99)(C99)(C99)| 表示浮点类别(宏常量)|

参考

  • C11标准(ISO / IEC 9899:2011):