对于float和double类型的数,一般不用 == 来判断二者是否相等,通常是取二者的差的绝对值小于某个数时,就认为是相等的,原因是浮点数的表示误差较大。
const double eps = 1E-6;double a = 1.234509,b = 1.23508;if(fabs(a - b) <= eps) // 认为是相等
这个当然相等