浮点数和浮点类型

浮点数

C++的浮点数分为两种

第一种:常见的形式,标准的小数点表示方式,如;12.22 , 11.11 ,22.22;

第二种:E表示方法,常见的形式为2.33e+5, 6.66e-4, 7e5, -18.23e3

第二种浮点数表示方法的说明

1.d.dddE+n表示:将小数点向右移n位
2.d.dddE-n表示:将小数点向左移n位
3.如3.45E6,表示将小数点向右移动6位,E6表示10的6次方,6被称为指数,3.45为指数

浮点类型

C++有3种浮点类型

1.float:至少为32位
2.double:至少为48位
3.long double:至少和double一样长
4.但是,通常float为32位,double为64位,long double为80、96、128位

代码示例
#include 

using namespace std;
int main(int argc, const char * argv[]) {

    cout.setf(ios_base::fixed, ios_base::floatfield);

    float tub = 10.0/3.0;
    double min = 10.0/3.0;
    const float million = 1.09e7;

    cout << "tub = " << tub << endl;
    cout << "Min = " << min << endl;
    cout << "Const Million = " << million << endl;

    return 0;
}

输出结果

tub = 3.333333
Min = 3.333333
Const Million = 10900000.000000
Program ended with exit code: 0
说明

1.setf()方法迫使输出使用定点表示法,以便更好地了解精度,它防止程序 把较大的值切换为E表示法 ,并使程序显示到小数点后6位。参数 iOS_baSe::fixed和ios_base::floatfield是通过包含iostream 来提供的常最
2.通常cout会删除结尾的零,调用cout.setf( )将羝盖这种操作

不使用setf()方法的输出结果
tub = 3.33333
Min = 3.33333
Const Million = 1.09e+07
Program ended with exit code: 0

你可能感兴趣的:(浮点数和浮点类型)