W3cubDocs

/C++

Common mathematical functions

Functions

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

(function)
Trigonometric functions
(C++11)(C++11)
computes sine (\({\small\sin{x} }\)sin(x))
(function)
(C++11)(C++11)
computes cosine (\({\small\cos{x} }\)cos(x))
(function)
(C++11)(C++11)
computes tangent (\({\small\tan{x} }\)tan(x))
(function)
(C++11)(C++11)
computes arc sine (\({\small\arcsin{x} }\)arcsin(x))
(function)
(C++11)(C++11)
computes arc cosine (\({\small\arccos{x} }\)arccos(x))
(function)
(C++11)(C++11)
computes arc tangent (\({\small\arctan{x} }\)arctan(x))
(function)
(C++11)(C++11)
arc tangent, using signs to determine quadrants
(function)
Hyperbolic functions
(C++11)(C++11)
computes hyperbolic sine (\({\small\sinh{x} }\)sinh(x))
(function)
(C++11)(C++11)
computes hyperbolic cosine (\({\small\cosh{x} }\)cosh(x))
(function)
(C++11)(C++11)
computes hyperbolic tangent (\({\small\tanh{x} }\)tanh(x))
(function)
(C++11)(C++11)(C++11)
computes the inverse hyperbolic sine (\({\small\operatorname{arsinh}{x} }\)arsinh(x))
(function)
(C++11)(C++11)(C++11)
computes the inverse hyperbolic cosine (\({\small\operatorname{arcosh}{x} }\)arcosh(x))
(function)
(C++11)(C++11)(C++11)
computes the inverse hyperbolic tangent (\({\small\operatorname{artanh}{x} }\)artanh(x))
(function)
Error and gamma functions
(C++11)(C++11)(C++11)
error function
(function)
(C++11)(C++11)(C++11)
complementary error function
(function)
(C++11)(C++11)(C++11)
gamma function
(function)
(C++11)(C++11)(C++11)
natural logarithm of the gamma function
(function)
Nearest integer floating point operations
(C++11)(C++11)
nearest integer not less than the given value
(function)
(C++11)(C++11)
nearest integer not greater than the given value
(function)
(C++11)(C++11)(C++11)
nearest integer not greater in magnitude than the given value
(function)
(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)
(C++11)(C++11)(C++11)
nearest integer using current rounding mode
(function)
(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)
Floating point manipulation functions
(C++11)(C++11)
decomposes a number into significand and a power of 2
(function)
(C++11)(C++11)
multiplies a number by 2 raised to a power
(function)
(C++11)(C++11)
decomposes a number into integer and fractional parts
(function)
(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)
multiplies a number by FLT_RADIX raised to a power
(function)
(C++11)(C++11)(C++11)
extracts exponent of the number
(function)
(C++11)(C++11)(C++11)
extracts exponent of the number
(function)
(C++11)(C++11) (C++11)(C++11)(C++11)(C++11)
next representable floating point value towards the given value
(function)
(C++11)(C++11)(C++11)
copies the sign of a floating point value
(function)
Classification and comparison
(C++11)
categorizes the given floating-point value
(function)
(C++11)
checks if the given number has finite value
(function)
(C++11)
checks if the given number is infinite
(function)
(C++11)
checks if the given number is NaN
(function)
(C++11)
checks if the given number is normal
(function)
(C++11)
checks if the given number is negative
(function)
(C++11)
checks if the first floating-point argument is greater than the second
(function)
(C++11)
checks if the first floating-point argument is greater or equal than the second
(function)
(C++11)
checks if the first floating-point argument is less than the second
(function)
(C++11)
checks if the first floating-point argument is less or equal than the second
(function)
(C++11)
checks if the first floating-point argument is less or greater than the second
(function)
(C++11)
checks if two floating-point values are unordered
(function)

Types

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

Macro constants

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

Notes

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

See also

Mathematical special functions
C documentation for Common mathematical functions

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/numeric/math