std:: isnormal
| 
           定义于头文件
            
            
             <cmath>
            
            | ||
| (1) | ||
| 
           
           
           
            
             bool
            
            isnormal
            
             (
            
            
             float
            
            num
            
             )
            
            
             ;
            
             
             
              bool
             
             isnormal
             
              (
             
             
              double
             
             num
             
              )
             
             
              ;
             
              | (C++11 起) (C++23 前) | |
| 
           
            
             constexpr
            
            
             bool
            
            isnormal
            
             (
            
            
             /*浮点类型*/
            
            num
            
             )
            
            
             ;
            
           
           | (C++23 起) | |
| 
           
            SIMD 重载
           
           
            (C++26 起)
           
           | ||
| 
           定义于头文件
            
            
             <simd>
            
            | ||
| 
           
            
             template
            
            
             <
            
            
             /*数学浮点类型*/
            
            V
            
             >
            
             
             
              constexpr
             
             
              typename
             
             
              /*推导出的 SIMD 类型*/
             
             
              <
             
             V
             
              >
             
             
              ::
             
             
              mask_type
             
              | (S) | (C++26 起) | 
| 
           定义于头文件
            
            
             <cmath>
            
            | ||
| 
           
            
             template
            
            
             <
            
            
             class
            
            Integer
            
             >
            
             bool isnormal ( Integer num ) ; | (A) | (C++11 起) (C++23 起为 constexpr) | 
| 
          
           S)
          
          SIMD重载对
          
           
            v_num
           
          
          执行逐元素的
           
           std::isnormal
          运算。
 | (since C++26) | 
| 目录 | 
参数
| num | - | 浮点数或整数值 | 
| v_num | - | 数据并行对象,其元素类型为浮点类型的 std::basic_simd 特化 | 
返回值
         [
        
        
         
          
          
           0
          
          
         
        
        
         ,
        
        
         
          v_num.
          
           size
          
          
           (
          
          
           )
          
         
        
        
         )
        
       
       内的所有
       
        
         i
        
       
       ,若
       
        
         v_num
         
          [
         
         i
         
          ]
         
        
       
       为正常值时,其第 i
       
        th
       
       个元素等于
       
        
         
          true
         
        
       
       ,否则等于
       
        
         
          false
         
        
       
       。
      注释
额外的重载不需要完全按照 (A) 提供。只需确保对于整数类型的实参 num , std :: isnormal ( num ) 与 std :: isnormal ( static_cast < double > ( num ) ) 具有相同效果即可。
示例
#include <cfloat> #include <cmath> #include <iostream> 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 (函数) | 
| 
          
           
            C 文档
           
          
          关于
          
           
            isnormal
           
          
          | |