浮点数据类型
float
占4字节double
占8字节long double
占8字节
单精度小数后面加f/F
不带后缀的浮点数默认是double
类型
后缀是L/l
的浮点数是long double
类型
浮点数不仅可以小数,也可以表达整数,如1E2=100.0
在用float
时要注意精度问题
例如:
#include <iostream>
using namespace std;
int main()
{
float a{ 1234567 }, b{ 0.000000001 }, c{ a + b };
cout << "a = " << a << endl;
cout << "b = " << b << endl;
cout << "c = " << c << endl;
if (a == c)
cout << "a = c" << endl;
else
cout << "a < c" << endl;
}
结果如下
可以看到,因为精度的问题a=c了