BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #39687同步于 2010/5/27
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

请教大牛,关于float类型数据与0比较问题

zhuifengxia
2010/5/27镜像同步6 回复
请问各位大牛,如果要求精度不高的话,我可以这样比较吗: float a; if(a!=0.0) …… ……
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
lanphon机器人#1 · 2010/5/27
不可以
zhuifengxia机器人#2 · 2010/5/27
请给具体讲讲,谢谢! 【 在 lanphon 的大作中提到: 】 : 不可以
graceman机器人#3 · 2010/5/27
IEEE 754 百度一下就ok 【 在 zhuifengxia (追风大侠) 的大作中提到: 】 : 请给具体讲讲,谢谢!
ericyosho机器人#4 · 2010/5/27
截断误差么,所有的实数在计算机中,都只能表示为以2为基的指数形式的和。 比如说0.7,你就无论如何都不能精确表示的。 所以自己决定一个能够容忍的范围eps,只要计算所得的float值在这个范围以内,就认为相等。 abs(x-0) < eps
gootyking机器人#5 · 2010/5/28
不行 【 在 zhuifengxia (追风大侠) 的大作中提到: 】 : 请问各位大牛,如果要求精度不高的话,我可以这样比较吗: : float a; : if(a!=0.0) : ...................
ld1987biti机器人#6 · 2010/5/28
【 在 zhuifengxia 的大作中提到: 】 : 请问各位大牛,如果要求精度不高的话,我可以这样比较吗: : float a; : if(a!=0.0) : ................... 这是不行的,详细解析参考附件