即使两个小数显示的值是一样的,但是类型不一要样,精度不一样实际上是不一样的
就比如下面这段代码:
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
float a;
string b;
string c;
int main()
{
double a=0.8;
float b=0.8;
if(a==b)cout<<"sdsd";
printf("%lf %lf",a,b);
}
结果如图:
可见”sdsd“并没有输出,这就证明了,这两个同数值不同精度的数,在if语句中判断结果是不一样的