Namespaces
Variants
Actions
ads via Carbon Get the APM insights you need without enterprise price tags. Built for dev teams, not Fortune 500s ads via Carbon

Common mathematical functions

From cppreference.com
< cpp‎ | numeric
 
 
 
Common mathematical functions
 

Contents

[edit] Functions

Defined in header <cstdlib>
computes absolute value of an integral value (|x|)
(function) [edit]
computes quotient and remainder of integer division
(function) [edit]
Defined in header <cinttypes>
computes absolute value of an integral value (|x|)
(function) [edit]
computes quotient and remainder of integer division
(function) [edit]
Defined in header <cmath>
Basic operations
absolute value of a floating point value (|x|)
(function) [edit]
(C++11)(C++11)
remainder of the floating point division operation
(function) [edit]
(C++11)(C++11)(C++11)
signed remainder of the division operation
(function) [edit]
(C++11)(C++11)(C++11)
signed remainder as well as the three last bits of the division operation
(function) [edit]
(C++11)(C++11)(C++11)
fused multiply-add operation
(function) [edit]
(C++11)(C++11)(C++11)
larger of two floating-point values
(function) [edit]
(C++11)(C++11)(C++11)
smaller of two floating point values
(function) [edit]
(C++11)(C++11)(C++11)
positive difference of two floating point values (max(0, x-y))
(function) [edit]
(C++11)(C++11)(C++11)
not-a-number (NaN)
(function) [edit]
Exponential functions
(C++11)(C++11)
returns e raised to the given power (ex)
(function) [edit]
(C++11)(C++11)(C++11)
returns 2 raised to the given power (2x)
(function) [edit]
(C++11)(C++11)(C++11)
returns e raised to the given power, minus 1 (ex-1)
(function) [edit]
(C++11)(C++11)
computes natural (base e) logarithm (ln(x))
(function) [edit]
(C++11)(C++11)
computes common (base 10) logarithm (log10(x))
(function) [edit]
(C++11)(C++11)(C++11)
base 2 logarithm of the given number (log2(x))
(function) [edit]
(C++11)(C++11)(C++11)
natural logarithm (to base e) of 1 plus the given number (ln(1+x))
(function) [edit]
Power functions
(C++11)(C++11)
raises a number to the given power (xy)
(function) [edit]
(C++11)(C++11)
computes square root (x)
(function) [edit]
(C++11)(C++11)(C++11)
computes cube root (3x)
(function) [edit]
(C++11)(C++11)(C++11)
computes hypotenuse x2
+y2
and x2
+y2
+z2
(since C++17)

(function) [edit]
Trigonometric functions
(C++11)(C++11)
computes sine (sin(x))
(function) [edit]
(C++11)(C++11)
computes cosine (cos(x))
(function) [edit]
(C++11)(C++11)
computes tangent (tan(x))
(function) [edit]
(C++11)(C++11)
computes arc sine (arcsin(x))
(function) [edit]
(C++11)(C++11)
computes arc cosine (arccos(x))
(function) [edit]
(C++11)(C++11)
computes arc tangent (arctan(x))
(function) [edit]
(C++11)(C++11)
arc tangent, using signs to determine quadrants
(function) [edit]
Hyperbolic functions
(C++11)(C++11)
computes hyperbolic sine (sinh(x))
(function) [edit]
(C++11)(C++11)
computes hyperbolic cosine (cosh(x))
(function) [edit]
(C++11)(C++11)
computes hyperbolic tangent (tanh(x))
(function) [edit]
(C++11)(C++11)(C++11)
computes the inverse hyperbolic sine (arsinh(x))
(function) [edit]
(C++11)(C++11)(C++11)
computes the inverse hyperbolic cosine (arcosh(x))
(function) [edit]
(C++11)(C++11)(C++11)
computes the inverse hyperbolic tangent (artanh(x))
(function) [edit]
Error and gamma functions
(C++11)(C++11)(C++11)
error function
(function) [edit]
(C++11)(C++11)(C++11)
complementary error function
(function) [edit]
(C++11)(C++11)(C++11)
gamma function
(function) [edit]
(C++11)(C++11)(C++11)
natural logarithm of the gamma function
(function) [edit]
Nearest integer floating point operations
(C++11)(C++11)
nearest integer not less than the given value
(function) [edit]
(C++11)(C++11)
nearest integer not greater than the given value
(function) [edit]
(C++11)(C++11)(C++11)
nearest integer not greater in magnitude than the given value
(function) [edit]
(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)
nearest integer, rounding away from zero in halfway cases
(function) [edit]
(C++11)(C++11)(C++11)
nearest integer using current rounding mode
(function) [edit]
(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)
nearest integer using current rounding mode with
exception if the result differs
(function) [edit]
Floating point manipulation functions
(C++11)(C++11)
decomposes a number into significand and base-2 exponent
(function) [edit]
(C++11)(C++11)
multiplies a number by 2 raised to an integral power
(function) [edit]
(C++11)(C++11)
decomposes a number into integer and fractional parts
(function) [edit]
(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)
multiplies a number by FLT_RADIX raised to a power
(function) [edit]
(C++11)(C++11)(C++11)
extracts exponent of the number
(function) [edit]
(C++11)(C++11)(C++11)
extracts exponent of the number
(function) [edit]
(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)
next representable floating-point value towards the given value
(function) [edit]
(C++11)(C++11)(C++11)
copies the sign of a floating point value
(function) [edit]
Classification and comparison
categorizes the given floating-point value
(function) [edit]
(C++11)
checks if the given number has finite value
(function) [edit]
(C++11)
checks if the given number is infinite
(function) [edit]
(C++11)
checks if the given number is NaN
(function) [edit]
(C++11)
checks if the given number is normal
(function) [edit]
(C++11)
checks if the given number is negative
(function) [edit]
(C++11)
checks if the first floating-point argument is greater than the second
(function) [edit]
checks if the first floating-point argument is greater or equal than the second
(function) [edit]
(C++11)
checks if the first floating-point argument is less than the second
(function) [edit]
checks if the first floating-point argument is less or equal than the second
(function) [edit]
checks if the first floating-point argument is less or greater than the second
(function) [edit]
checks if two floating-point values are unordered
(function) [edit]

[edit] Types

Defined in header <cstdlib>
structure type, returned by std::div
(typedef) [edit]
structure type, returned by std::ldiv
(typedef) [edit]
(C++11)
structure type, returned by std::lldiv
(typedef) [edit]
Defined in header <cinttypes>
(C++11)
structure type, returned by std::imaxdiv
(typedef) [edit]
Defined in header <cmath>
float_t
(C++11)
most efficient floating-point type at least as wide as float
(typedef) [edit]
double_t
(C++11)
most efficient floating-point type at least as wide as double
(typedef) [edit]

[edit] Macro constants

Defined in header <cmath>
indicates the overflow value for float, double and long double respectively
(macro constant) [edit]
(C++11)
evaluates to positive infinity or the value guaranteed to overflow a float
(macro constant) [edit]
(C++11)
evaluates to a quiet NaN of type float
(macro constant) [edit]
defines the error handling mechanism used by the common mathematical functions
(macro constant) [edit]
Classification
(C++11)(C++11)(C++11)(C++11)(C++11)
indicates a floating-point category
(macro constant) [edit]

[edit] Notes

Feature-test macro Value Std Feature
__cpp_lib_constexpr_cmath 202202L (C++23) Constexpr for FP environment agnostic mathematical functions in <cmath> and <cstdlib>
202306L (C++26) Constexpr for most mathematical functions in <cmath>

[edit] See also

Mathematical special functions
C documentation for Common mathematical functions