浮点数不应用于等于或不等于的判断

浮点数有精度限制,对于超出了精度的部分会被截断,所以浮点数受精度影响不是一个准确值,

float的精度为小数点后六位,对于小于1e-6的数无法知道准确值,

double的精度为小数点后十五位,对于小于1e-15的数无法知道准确值,

可以根据实际误差接受范围来设置误差区间,两数之差落在这个区间则可看做相等

比如可以在fabs(a-b)<1e-6时认为a==b;

posted @ 2021-03-29 17:41  NoerForest  阅读(513)  评论(0)    收藏  举报