关于int型和float型相乘的问题
来源:互联网 发布:个人求职网站方案域名 编辑:程序博客网 时间:2024/05/21 21:40
问题描述,比如int a = 58 如果直接用a*0.006在我的代码里运行出来是0.34800000000000003 而我们手算,结果应该是0.348?
为什么会出现这样的情况呢,因为0.006是一个float型的数据,我们看它是0.006,但是他在内在里就不一定是0.006,它可以是0.00599999999999999,或者0.006000000000000001,因为浮点型的范围为-2^128 ~ +2^128,也即-3.40E+38 ~ +3.40E+38;
float:2^23 = 8388608,一共七位,这意味着最多能有7位有效数字,但绝对能保证的为6位,也即float的精度为6~7位有效数字;也就是说float型可能存在一位是不能保证有效的,所以就会出现上面那种情况了
0 0
- 关于int型和float型相乘的问题
- float型和int 的小疑问
- Java double float与int相乘出错问题
- 关于float型的内存存储和精度丢失问题
- 关于java中float和int 精度和范围的问题
- 关于float和double的精度问题
- 关于float和double的输入输出问题
- 关于float型数据与int型,字节数组的转化
- 关于float型数据与int型,字节数组的转化
- 关于float转int的函数实现
- 关于float转int的函数实现
- 关于int,float,double与Integer、Float、Double的理解
- 遇到 float 转 int 的有趣问题
- uint和int相乘,如果int为负,则相乘的结果非常大
- 串口通信中的int float型数据的处理和发送
- 串口通信中的int float型数据的处理和发送
- 关于int数据转换float数据出现输出0.0000的问题
- int, float和double的内存结构
- 面试知识点
- 沟通中的有效表达与倾听(VOICE)
- hdu1263(水果 map)
- 著名黑客工具CC攻击的思路及防范方法
- 用C++实现单链表
- 关于int型和float型相乘的问题
- 棋牌-21点算法
- Maven 教程入门(整理版)
- 模块计算机类型“X64”与目标计算机类型“X86”冲突问题的几点补充
- JavaScript学习笔记十
- 我学过的java4
- Android studio 2.0后添加jar文件到工程
- OpenCV日记
- 动态规划——漂亮打印问题