Bootstrap

常用数学函数

转自:https://zh.cppreference.com/w/cpp/numeric/math

函数

定义于头文件 <cstdlib>

abs(int)
labs
llabs



(C++11)

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

div(int)
ldiv
lldiv



(C++11)

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

定义于头文件 <cinttypes>

abs(std::intmax_t)
imaxabs

(C++11)
(C++11)

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

div(std::intmax_t)
imaxdiv

(C++11)
(C++11)

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

定义于头文件 <cmath>

基础运算

abs(float) 
fabs

浮点值的绝对值( |x| ) 
(函数)

fmod

浮点除法运算的余数 
(函数)

remainder

(C++11)

除法运算的有符号余数 
(函数)

remquo

(C++11)

有符号余数还有除法运算的最后三位 
(函数)

fma

(C++11)

混合的乘加运算 
(函数)

fmax

(C++11)

二个浮点值的较大者 
(函数)

fmin

(C++11)

二个浮点值的较小者 
(函数)

fdim

(C++11)

二个浮点值的正数差( max(0, x-y) ) 
(函数)

nan
nanf
nanl

(C++11)
(C++11)
(C++11)

非数( NaN ) 
(函数)

指数函数

exp

返回 e 的给定次幂( ex ) 
(函数)

exp2

(C++11)

返回 2 的给定次幂( 2x ) 
(函数)

expm1

(C++11)

返回 e 的给定次幂减一( ex-1 ) 
(函数)

log

计算自然(底 e )对数( ln(x) ) 
(函数)

log10

计算常用(底 10 )对数( log10(x) ) 
(函数)

log2

(C++11)

给定数的 2 为底的对数( log2(x) ) 
(函数)

log1p

(C++11)

给定数的自然对数(底 e )加 1 ( ln(1+x) ) 
(函数)

幂函数

pow

求数的给定次幂( xy ) 
(函数)

sqrt

计算平方根( √x ) 
(函数)

cbrt

(C++11)

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

hypot

(C++11)

计算二个给定数平方和的平方根( √x2
+y2
 ) 
(函数)

三角函数

sin

计算正弦( sin(x) ) 
(函数)

cos

计算余弦( cos(x) ) 
(函数)

tan

计算正切( tan(x) ) 
(函数)

asin

计算弧(反)正弦( arcsin(x) ) 
(函数)

acos

计算弧(反)余弦( arccos(x) ) 
(函数)

atan

计算弧(反)正切( arctan(x) ) 
(函数)

atan2

弧(反)正切,用符号确定象限 
(函数)

双曲函数

sinh

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

cosh

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

tanh

双曲正切 
(函数)

asinh

(C++11)

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

acosh

(C++11)

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

atanh

(C++11)

计算反双曲正切( artanh(x) ) 
(函数)

误差与伽马函数

erf

(C++11)

误差函数 
(函数)

erfc

(C++11)

补误差函数 
(函数)

tgamma

(C++11)

伽马函数 
(函数)

lgamma

(C++11)

伽马函数的自然对数 
(函数)

最接近整数的浮点运算

ceil

不小于给定值的最接近整数值 
(函数)

floor

不大于给定值的最接近整数 
(函数)

trunc

(C++11)

绝对值不大于给定值的最接近整数 
(函数)

round
lround
llround

(C++11)
(C++11)
(C++11)

最接近整数,中间情况下舍入到远离零 
(函数)

nearbyint

(C++11)

使用当前舍入模式的最接近整数 
(函数)

rint
lrint
llrint

(C++11)
(C++11)
(C++11)

使用当前舍入模式的最接近整数
若结果有别则有异常 
(函数)

浮点操作函数

frexp

将数分解为有效数字和 2 的幂次 
(函数)

ldexp

将数乘以 2 的幂次 
(函数)

modf

分解数为整数和小数部分 
(函数)

scalbn
scalbln

(C++11)
(C++11)

将数乘以 FLT_RADIX 的幂次 
(函数)

ilogb

(C++11)

提取数的指数 
(函数)

logb

(C++11)

提取数的指数 
(函数)

nextafter
nexttoward

(C++11)
(C++11)

向给定值的下个可表示浮点值 
(函数)

copysign

(C++11)

复制浮点值的符号 
(函数)

分类与比较

fpclassify

(C++11)

归类给定的浮点值 
(函数)

isfinite

(C++11)

检查给定数是否拥有有限值 
(函数)

isinf

(C++11)

检查给定数是否为无限 
(函数)

isnan

(C++11)

检查给定的数是否 NaN 
(函数)

isnormal

(C++11)

检查给定数是否正规 
(函数)

signbit

(C++11)

检查给定数是否为负 
(函数)

isgreater

(C++11)

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

isgreaterequal

(C++11)

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

isless

(C++11)

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

islessequal

(C++11)

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

islessgreater

(C++11)

检查第一浮点参数是否小于或大于第二个 
(函数)

isunordered

(C++11)

检查二个浮点值是否无顺序 
(函数)

类型

定义于头文件 <cstdlib>

div_t

结构体类型, std::div 函数的返回值 
(typedef)

ldiv_t

结构体类型, std::ldiv 函数的返回值 
(typedef)

lldiv_t

(C++11)

结构体类型, std::lldiv 函数的返回值 
(typedef)

定义于头文件 <cinttypes>

imaxdiv_t

(C++11)

结构体类型,由 std::imaxdiv 函数返回 
(typedef)

定义于头文件 <cmath>

float_t

(C++11)

至少和 float 一样宽的最高效浮点类型 
(typedef)

double_t

(C++11)

至少和 double 一样宽的最高效浮点类型 
(typedef)

宏常量

定义于头文件 <cmath>

HUGE_VALF
HUGE_VAL
HUGE_VALL

(C++11)

(C++11)

分别指示 float 、 double 和 long double 的上溢值 
(宏常量)

INFINITY

(C++11)

求值为正无穷大或保证上溢 float 的值 
(宏常量)

NAN

(C++11)

求值为 float 类型的安静 NAN 
(宏常量)

math_errhandling
MATH_ERRNO
MATH_ERREXCEPT

(C++11)
(C++11)
(C++11)

定义常用数学函数所用的错误处理机制 
(宏常量)

分类

FP_NORMAL
FP_SUBNORMAL
FP_ZERO
FP_INFINITE
FP_NAN

(C++11)
(C++11)
(C++11)
(C++11)
(C++11)

指示浮点类别 
(宏常量)
;