std::isnormal
来自cppreference.com
定义于头文件 <cmath>
|
||
bool isnormal( float arg ); |
(1) | (C++11 起) |
bool isnormal( double arg ); |
(2) | (C++11 起) |
bool isnormal( long double arg ); |
(3) | (C++11 起) |
bool isnormal( IntegralType arg ); |
(4) | (C++11 起) |
1-3) 确定给定的浮点数
arg
是否为正规值,即不是零、非正规、无穷大或 NaN 。参数
arg | - | 浮点值 |
返回值
若 arg
正规则为 true ,否则为 false 。
示例
运行此代码
#include <iostream> #include <cmath> #include <cfloat> int main() { std::cout << std::boolalpha << "isnormal(NaN) = " << std::isnormal(NAN) << '\n' << "isnormal(Inf) = " << std::isnormal(INFINITY) << '\n' << "isnormal(0.0) = " << std::isnormal(0.0) << '\n' << "isnormal(DBL_MIN/2.0) = " << std::isnormal(DBL_MIN/2.0) << '\n' << "isnormal(1.0) = " << std::isnormal(1.0) << '\n'; }
输出:
isnormal(NaN) = false isnormal(Inf) = false isnormal(0.0) = false isnormal(DBL_MIN/2.0) = false isnormal(1.0) = true
参阅
(C++11) |
归类给定的浮点值 (函数) |
(C++11) |
检查给定数是否拥有有限值 (函数) |
(C++11) |
检查给定数是否为无限 (函数) |
(C++11) |
检查给定的数是否 NaN (函数) |