关于浮点数的精度

代码:

#include<iostream>
using namespace std;          //precision problems with float
int main()
{
float a = 2.34E+22f;
float b = a + 1.0f;

cout << "a=" << a << endl;
cout << "b-a=" << b - a << endl;

system("pause");
return 0;
}

 

输出结果:

 

分析:因为floatl类型只能表示数字中的前6位或者前7位,因此对a的第23位进行修改并不会引起变化。

posted @ 2018-12-07 22:59  裏表異体  阅读(210)  评论(0编辑  收藏  举报