• 单精度浮点数和双精度浮点数有什么区别


    如果被人问道,单精度浮点数和双精度浮点数有什么区别?
    可以这样回答:
    1、单精度是8位有效数字,双精度是16位有效数字
    2、双精度比单精度占用内存大 float占4个字节(32位)内存空间 double占8个字节(64位)内存空间
    3、CPU处理单精度浮点数的速度比处理双精度浮点数

    float与double的区别在于变量类型不同、指数范围不同、表达式指数位不同、占用内存空间不同、有效数字位数不同、在程序中处理速度不同。float属于单精度型浮点数据,指数范围为-127128;double属于双精度型浮点数据,指数范围为-10231024。

    float与double的区别介绍

    1、两者变量类型不同

    float属于单精度型浮点数据。

    double属于双精度型浮点数据。

    2、两者指数范围不同

    float的指数范围为-127~128。

    double的指数范围为-1023~1024。

    3、两者表达式指数位不同

    float的表达式为1bit(符号位)+8bits(指数位)+23bits(尾数位)

    double的表达式为1bit(符号位)+ 11bits(指数位)+ 52bits(尾数位)

    4、两者占用存空间不同

    float占4个字节(32位)内存空间,其数值范围为3.4E-38~3.4E+38。

    double占8个字节(64位)内存空间,其数值范围为1.7E-308~1.7E+308。

    5、两者有效数字位数不同

    float只能提供8位有效数字。

    double可提供16位有效数字。

    6、在程序中处理速度不同

    一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数快,如果不声明,默认小数为double类型,因此,如果要用float的话,必须进行强转。

  • 相关阅读:
    MySQL 约束条件,关键字练习,其他语句
    常用的校验码
    C语言 字符数组
    每日一练 | 华为认证真题练习Day115
    智能多价格-面向电商的全栈开发利器
    JS防抖和节流
    卸载Gitlab,导入新的备份
    Leetcode刷题350. 两个数组的交集 II
    Revit二次开发——族的基础
    【PHP代码审计】——开启你的代码审计生涯
  • 原文地址:https://blog.csdn.net/qq_31119443/article/details/127428425