怎么使用C++的float、double判断是否等于0问题 |
您所在的位置:网站首页 › double判断是否为0 › 怎么使用C++的float、double判断是否等于0问题 |
怎么使用C++的float、double判断是否等于0问题
发布时间:2022-08-24 15:57:25
来源:亿速云
阅读:473
作者:iii
栏目:开发技术
本篇内容介绍了“怎么使用C++的float、double判断是否等于0问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! float、double判断是否等于0如果是两个int类型的数据,想要判断他们是否相等,我们可以直接比较。 int a =11; int b=11; if(a==b)答案是肯定的,BUT如果是float和double: float是32位,double是64位。float32位中,有1位符号位,8位指数位,23位尾数位。double64位中,1位符号位,11位指数位,52位尾数位。 一般float型只能精确到小数到后六位即1e-6,将float型的数a的绝对值abs(a)与1e-6比较,如果abs(a)比1e-6还要小的话就可以认为a的值为零,因为小数六位以后是不精确的,是没有意义的。 比如数0.0000001虽然确实不等于零,但是第七位小数1是没有意义的就可以认为这个数等于0。 float,double分别遵循R32-24,R64-53的标准。所以float的精度误差在1e-6;double精度误差在1e-15,所以要判断一个单精度浮点数:则是if( abs(f) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |