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( IntegralType arg ); | (4) | (since C++11) |
arg
has finite value i.e. it is normal, subnormal or zero, but not infinite or NaN.arg
argument of any integral type. Equivalent to (2) (the argument is cast to double
). arg | - | floating point value |
true
if arg
has finite value, false
otherwise.
#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) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/numeric/math/isfinite