你真的了解浮点型吗?float double浮点型深度解刨
学过编程语言的都知道,浮点型是有精度问题的。(说人话它实际值与我们想要存入的的值是有细微误差的)。接下来我的讲解将让你对于浮点型的了解更加深入。
废话不多说,先看一个例子。(基于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浮点型深度解刨相关推荐
- C语言 —— float单精度浮点型与double双精度浮点型的使用
float单精度浮点型与double双精度浮点型的使用 一.float与double类型介绍 二.例题:求圆的周长与面积并保留两位小数 三.总结 一.float与double类型介绍 代码: #inc ...
- 谈谈MySQL如何选择float, double, decimal
前言 我们知道在MySQL中有3种类型可以表示实数,分别是float,double和decimal.关于如何合理得使用这三种类型,网上的答案也层出不穷.但是究竟该选择哪一种类型,好像并没有统一的答案, ...
- float double 的存储方式
float 和 double 的表示法: 都是二进制的科学表示法: ± mantissa × 2 exponent (mantissa:尾数,exponent:指数,均使用二进制表示) float(浮 ...
- mysql float 怎么设置长度_MySQL中float double decimal区别总结
作者:极客小俊 一个专注于web技术的80后 你不用拼过聪明人,你只需要拼过那些懒人 你就一定会超越大部分人! 下表中规划了每个浮点类型的存储大小和范围: 类型大小范围(有符号)范围(无符号)用途fl ...
- 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 ...
- php 整形转浮点型,整型与浮点型相互转换
C语言浮点型转换为整型怎么转换的? 例如 float a=5.75 (int)a 夜影驱动编程小编今天和大家分享出来是5,为什么不是6? C语言有以下几种取整方法: 直接赋值给整数变量.如: int ...
- Swfit Float/Double保留一位小数
最近,在swfit开发中,遇到了高度精确值的问题,比如:需求是要数值类型的参数:Float/Double/Number,而不是字符串String 类型.因此,会遇到这样的问题: 这样的值,虽然是Flo ...
- java中浮点型常量表示_浮点型变量/常量
带小数的数据在Java中称为浮点型.浮点型可分为float类型和double类型. 表2-5浮点型数据类型 类型 占用存储空间 表数范围 float 4字节 -3.403E38~3.403E38 do ...
- c语言算式中有double和int,C语言当中int,float,double,char这四个有什么区别?
区别在以下方面: 一.定义方面: 1.int为整数型,用于定义整数类型的数据 . 2.float为单精度浮点型,能准确到小数点后六位 . 3.double为双精度浮点型,能准确到小数点都十二位 . 4 ...
最新文章
- SSH配置优化和慢的解决方法
- keynotes egestas,PPT 渐变背景下载-imsoft.cnblogs
- 分表分库中间件 sharding-jdbc
- 音视频技术在云会议场景的拓展和未来
- 希赛软件设计师视频教程-3.1 进程(第三部分) 标清
- 1.计算机语言发展史
- 并发-阻塞队列源码分析
- java 32 64 性能,Java 64位的性能是否优于32位版本?
- 为什么ArcGIS 10.3导出 Shapefile的字段名会被截断成3个汉字?解决方法如下
- [msi]获取msi安装包的ProductCode
- python 删除第三方库_python中通过pip安装的第三方库在哪里
- 均值模糊调试遇到的问题
- coreldraw x4忽略视图样式补丁_80%的人都忽略了PPT画布之外的用法,但这6点真的很实用...
- Java IO源码目录
- http://blog.csdn.net/wangyoujin321/article/details/51472606
- 手机电脑自适应导航源码php,自适应各终端懒人网址导航源码 v1.6
- AndroidStudio制作登录和注册功能的实现,界面的布局介绍
- 〖小狼毫〗小狼毫使用心得分享
- 禁止查看网页源代码方法
- 高德定位SDK踩坑-高精度模式下获取不到GPS定位(无网络环境)