51Testing软件测试论坛

标题: 请教一个比较菜的问题?? [打印本页]

作者: rftxrx    时间: 2013-9-5 15:59
标题: 请教一个比较菜的问题??
purchase=18
price=3.7
price * purchase =66.6
最后判断 price * purchase =66.6的时候 结果始终 为 false
百思不得其解。。。。。。。
作者: feiyunkai    时间: 2013-9-5 16:39
回复 1# rftxrx


    double型数据比较,不能直接判断是否相等,而要通过两值相减,然后判断是否小于一个极小值。
例:
If price  *  purchase-66.6<0.0000001 Then
    Print "通过"
Else
    Print "未通过"
End If
或者先数据转换为字符串后再比较:
例:
If price  *  purchase="66.6" Then
    Print "通过"
Else
    Print "未通过"
End If
作者: Alvin-x    时间: 2013-9-5 16:50
楼上正解.....
拿到vs里可以调试下,会发现price  *  purchase=66.600000000000009
作者: rftxrx    时间: 2013-9-9 11:11
回复 2# feiyunkai

        明白了 。
    上次看到了没时间回,现在回来补一下,谢谢
作者: 黑羽祭    时间: 2013-9-9 12:53
2楼正解
作者: Shawn_xiao    时间: 2013-9-9 15:37
double 有效值 14位 前14位肯定是对的 后面他就不会管了......




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2