zoukankan      html  css  js  c++  java
  • <cfloat> (float.h)

    头文件:

    <cfloat> (float.h)


    浮点类型的特性

    这个头文件为特殊系统和编译器的实现描述了浮点类型的特征.

    一个浮点数包含四个元素:

    • 一个标志(a sign):正或负;
    • 一个基数(a base):这表示一串不同的数字能够被一个个单一的数字所表示(2 就是二进制(binary),10就是十进制(decimal),16就是十六进制(hexadecimal)...);
    • 一个有效数(a significand):这是一系列前面所谈到的基数的数字,在这一系列中数字的位数就是众所周知的精度;
    • 一个指数(an exponent):它代表着有效数字的偏移量,用下面的方式影响着其值:
      浮点数值 = 有效数 x 基数 指数 ,(还有相应的标志(sign))
      (image)

    宏常量


    下面的表格显示了这个头文件中定义的不同的变量的名称和所有实现的最小值最大值
    (具体的实现可能有的值比这个大或者小 按照说明):

      当一组宏存以FLT_,DBL_和LDBL_为前缀时,以FLT_开头的适用于float,以DBL_开头的适用于double,以LDBL_开头的适用于long double;

    名称 代表 表示
    FLT_RADIX 2或者更大 基数 (radix)
    所有浮点数类型的基数
    FLT_MANT_DIG
    DBL_MANT_DIG
    LDBL_MANT_DIG
     

     尾数的位数

    (MANTissa DIGits)

     有效数的精度,符合有效数字的位数
    FLT_DIG
    DBL_DIG
    LDBL_DIG

    6 或者更大

    10 或者更大

    10 或者更大

     精度

    (DIGits)

     带十进制的数能够转化为一个浮点数并且将其再次转化回来时不改变整数数字

    FLT_MIN_EXP
    DBL_MIN_EXP
    LDBL_MIN_EXP
       最小的指数 用于生成一个标准化的浮点数指数的最小负整数值
    FLT_MIN_10_EXP
    DBL_MIN_10_EXP
    LDBL_MIN_10_EXP

    -37 或者更小

    -37 或者更小

    -37 或者更小

     最小以10为基数的指数

    用于生成一个标准浮点数的十进制指数表达式

    的最小负整数

    FLT_MAX_EXP
    DBL_MAX_EXP
    LDBL_MAX_EXP
       最大的指数  用于生成一个标准化的浮点数指数的最大整数值
    FLT_MAX_10_EXP
    DBL_MAX_10_EXP
    LDBL_MAX_10_EXP

    37 或者更大

    37 或者更大

    37 或者更大

     最大以10为基数的指数  

    用于生成一个标准浮点数的十进制指数表达式

    的最大整数

    FLT_MAX
    DBL_MAX
    LDBL_MAX
    1E+37 或者更大
    1E+37 或者更大
    1E+37 或者更大
     最大数  表示最大有限的浮点数
    FLT_EPSILON
    DBL_EPSILON
    LDBL_EPSILON
    1E-5 或者更小
    1E-9 或者更小
    1E-9 或者更小
     EPSILON :)
     能够表示1和最小值的差大于1
    FLT_MIN
    DBL_MIN
    LDBL_MIN
    1E-37 或者更小
    1E-37 或者更小
    1E-37 或者更小
     最小数  表示最小有限的浮点数
    FLT_ROUNDS    舍入方式

     舍入行为,可能的值:

    -1:未确定的

    0:向0舍入

    1:四舍五入

    2:向正无穷

    3:向负无穷

    *适用于所有浮点类型(float,double和long double)

    FLT_EVAL_METHOD    赋值方式

     赋值格式的属性,可能的值:

    -1:未确定的

    0:赋值类型的范围和精度

    1:赋值时将float和double当作double,

    long double 当作long double

    2:赋值时所有都当作long double,其它负数都表示为实现的定义(implementation-defined)行为

    *适用于所有浮点类型

    DECIMAL_DIG    小数精度

     可以将一个十进制数转化一个浮点类型的数字,

    并且再次转为到与原来一样的数字时不丢失精度

    通用性


    FLT_EVAL_METHOD DECIMAL_DIG 是在符合C99标准的库中定义的或者只在符合C11的库中

    请参阅


    <climits> (limits.h) 整数类型的大小

    /*

      第一次修改时间:2016年1月30日 20:32:35

    */

  • 相关阅读:
    Java中断机制
    RPC原理
    synchronized和ReentrantLock的区别
    dubbo入门
    Zookeeper入门
    分布式事务
    Mysql索引会失效的几种情况
    java代码执行过慢的问题定位
    持续集成
    Mycat 数据库分库分表中间件
  • 原文地址:https://www.cnblogs.com/leihui/p/5172032.html
Copyright © 2011-2022 走看看