学过编程语言的都知道,浮点型是有精度问题的。(说人话它实际值与我们想要存入的的值是有细微误差的)。接下来我的讲解将让你对于浮点型的了解更加深入。

废话不多说,先看一个例子。(基于C语言)

c语言中浮点型有两种

1.单精度浮点型(float)

2.双精度浮点型(double)

先看一段代码

#include <stdio.h>int mian(){float a = 0.1f; //以单精度浮点型的方式初始化 单单一个小数,是会被默认为double类型的。double b = 0.1; printf("%.30f\n",a);//以单精度浮点型输出并保留30位小数printf("%.30lf\n"); //以双精度浮点型输出并保留30位小数}

输出结果

单单从结果上看,同是浮点型,double 和 float也是有区别的,而且可以看出double比float精度要高。

接下来我来给大家解释一下浮点型为什么表现出这样的特性呢。

首先看一段话

浮点数在计算机内部的表现方法:

根据国际标准IEEE(电气和电子工程协会)754,任意一个二进制浮点数V可以表示成下面的形式:

(-1)^S* M * 2^E

(-1)^s表示符号位,当S=0,V为正数;当s=1,V为负数。

M表示有效数字,大于等于1,小于2。

2^E表示指数位。

举例来说:十进制的5.0,写成二进制是101.0,相当于1.01*2^2。那么,按照上面v的格式,可以得出s = 0, M = 1.01, E = 2。

十进制的-5.0,写成二进制是-101.0,相当于-1.01*2^2。那么,S = 1,M = 1.01, E = 2。

接下来我将用画图的方式给未来大

你真的了解浮点型吗?float double浮点型深度解刨相关推荐

  1. C语言 —— float单精度浮点型与double双精度浮点型的使用

    float单精度浮点型与double双精度浮点型的使用 一.float与double类型介绍 二.例题:求圆的周长与面积并保留两位小数 三.总结 一.float与double类型介绍 代码: #inc ...

  2. 谈谈MySQL如何选择float, double, decimal

    前言 我们知道在MySQL中有3种类型可以表示实数,分别是float,double和decimal.关于如何合理得使用这三种类型,网上的答案也层出不穷.但是究竟该选择哪一种类型,好像并没有统一的答案, ...

  3. float double 的存储方式

    float 和 double 的表示法: 都是二进制的科学表示法: ± mantissa × 2 exponent (mantissa:尾数,exponent:指数,均使用二进制表示) float(浮 ...

  4. mysql float 怎么设置长度_MySQL中float double decimal区别总结

    作者:极客小俊 一个专注于web技术的80后 你不用拼过聪明人,你只需要拼过那些懒人 你就一定会超越大部分人! 下表中规划了每个浮点类型的存储大小和范围: 类型大小范围(有符号)范围(无符号)用途fl ...

  5. C# int uint long ulong byte sbyte float double decimal 范围,及类型!

    C# int uint long ulong byte sbyte float double decimal 范围,及类型! static void Main(string[] args){Conso ...

  6. php 整形转浮点型,整型与浮点型相互转换

    C语言浮点型转换为整型怎么转换的? 例如 float a=5.75 (int)a 夜影驱动编程小编今天和大家分享出来是5,为什么不是6? C语言有以下几种取整方法: 直接赋值给整数变量.如: int ...

  7. Swfit Float/Double保留一位小数

    最近,在swfit开发中,遇到了高度精确值的问题,比如:需求是要数值类型的参数:Float/Double/Number,而不是字符串String 类型.因此,会遇到这样的问题: 这样的值,虽然是Flo ...

  8. java中浮点型常量表示_浮点型变量/常量

    带小数的数据在Java中称为浮点型.浮点型可分为float类型和double类型. 表2-5浮点型数据类型 类型 占用存储空间 表数范围 float 4字节 -3.403E38~3.403E38 do ...

  9. c语言算式中有double和int,C语言当中int,float,double,char这四个有什么区别?

    区别在以下方面: 一.定义方面: 1.int为整数型,用于定义整数类型的数据 . 2.float为单精度浮点型,能准确到小数点后六位 . 3.double为双精度浮点型,能准确到小数点都十二位 . 4 ...

最新文章

  1. SSH配置优化和慢的解决方法
  2. keynotes egestas,PPT 渐变背景下载-imsoft.cnblogs
  3. 分表分库中间件 sharding-jdbc
  4. 音视频技术在云会议场景的拓展和未来
  5. 希赛软件设计师视频教程-3.1 进程(第三部分) 标清
  6. 1.计算机语言发展史
  7. 并发-阻塞队列源码分析
  8. java 32 64 性能,Java 64位的性能是否优于32位版本?
  9. 为什么ArcGIS 10.3导出 Shapefile的字段名会被截断成3个汉字?解决方法如下
  10. [msi]获取msi安装包的ProductCode
  11. python 删除第三方库_python中通过pip安装的第三方库在哪里
  12. 均值模糊调试遇到的问题
  13. coreldraw x4忽略视图样式补丁_80%的人都忽略了PPT画布之外的用法,但这6点真的很实用...
  14. Java IO源码目录
  15. http://blog.csdn.net/wangyoujin321/article/details/51472606
  16. 手机电脑自适应导航源码php,自适应各终端懒人网址导航源码 v1.6
  17. AndroidStudio制作登录和注册功能的实现,界面的布局介绍
  18. 〖小狼毫〗小狼毫使用心得分享
  19. 禁止查看网页源代码方法
  20. 高德定位SDK踩坑-高精度模式下获取不到GPS定位(无网络环境)

热门文章

  1. 「湖南周边游」安化云台山风景区——适合亲子游的地方
  2. 物联网之云平台搭建与大数据处理期末复习总结一
  3. FastFormers 论文解读:可以使Transformer 在CPU上的推理速度提高233倍
  4. 20届华为勇敢星实习面试记录
  5. jQuery颜色选择器ColorPicker
  6. 企业级BPM之微服务架构演进
  7. 学生信息结构体数组拷贝和排序(结构体,结构体数组,结构体指针)
  8. 新浪财经新闻爬取并进行舆情分析
  9. 计算机操作系统——学习笔记(下)
  10. EVILBOX: ONE靶机