在C++中,无论是float类型或者是double类型的浮点型变量,都有精度限制。因此不可直接将其与0进行"==“或者”!=“比较,应先进行精度范围设置,再将变量与”<=“或者”>="进行比较。
//const float dErrorRange=1e-6 //float类型
const double dErrorRange = 1e-15; //double类型
//假设x为浮点型变量
if (abs(x) <= dErrorRange) //进行==比较
if (abs(x) >= dErrorRange) //进行!=比较