由于计算机中数据的存储到最底层,只有1和0,所以会有一个精度的问题。
我们在比较浮点数的时候,在A>B或者A<B的时候,我们可以正常用大于号(>)或者小于号(<)进行比较;
但是我们在判断两个浮点数是否相等的时候,则不能直接用==号进行比较,因为这样会有风险
那么如何安全的进行浮点数的比较呢,就用到了Qt的一个方法bool qFuzzyCompare(double p1, double p2),使用方法如下:
double value1 = 5.323285194326;
double value2 = 5.3232851943232;
if(qFuzzyCompare(value1,value2))
{
//相等
}
else
{
//不想等
}