C/C++中的浮点数运算

时间:2023-03-09 04:54:07
C/C++中的浮点数运算

代码:

 #include <iostream>
#include <cstdio>
#include <cfloat> using namespace std; int main(){
float c = (1e15-1e--1e15)+1e-;//运算结果为1e-15
if(c < 1e-)
cout<<"zero"<<endl;
else
cout<<"no"<<endl; if((1.0+DBL_EPSILON) != 1.0 && (1.0+DBL_EPSILON/) == 1.0)//DEL_EPSILON为离1.0最近且大于1.0的浮点数与1.0的差值
cout<<"OK"<<endl; return ;
}

输出:

zero
OK

分析:

由于浮点数运算时经常会产生一定误差,因此判断浮点数是否为0一般判断其绝对值是否小于某个非常小的数。