Defined in header <cmath> | ||
---|---|---|
bool isfinite( float arg ); | (1) | (since C++11) |
bool isfinite( double arg ); | (2) | (since C++11) |
bool isfinite( long double arg ); | (3) | (since C++11) |
bool isfinite( Integral arg ); | (4) | (since C++11) |
arg
has finite value i.e. it is normal, subnormal or zero, but not infinite or NaN.from
argument of any integral type. Equivalent to (2) (the argument is cast to double
). arg | - | floating point value |
true
value if arg
has finite value, false
if arg
is infinite or NaN.
#include <iostream> #include <cmath> #include <cfloat> int main() { std::cout << std::boolalpha << "isfinite(NaN) = " << std::isfinite(NAN) << '\n' << "isfinite(Inf) = " << std::isfinite(INFINITY) << '\n' << "isfinite(0.0) = " << std::isfinite(0.0) << '\n' << "isfinite(exp(800)) = " << std::isfinite(std::exp(800)) << '\n' << "isfinite(DBL_MIN/2.0) = " << std::isfinite(DBL_MIN/2.0) << '\n'; }
Output:
isfinite(NaN) = false isfinite(Inf) = false isfinite(0.0) = true isfinite(exp(800)) = false isfinite(DBL_MIN/2.0) = true
(C++11) | categorizes the given floating point 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 documentation for isfinite |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/numeric/math/isfinite