C++里面,强制类型转换

2025-02-24 14:24:32
推荐回答(5个)
回答1:

C++程序的运行结果是5,虽然使用强制类型转换后5已经是浮点实型了,但是由于在C++中的输出语句cout输出时的默认格式是不输出小数尾0的,但是在C语言中就是输出5.000000,如果要输出尾0的话,要设置cout的输出格式。 

假设你想输出5.00,则就需要使用格式控制符fixed、showpoint、setprecision() 的啦,但是此时不许包含头文件,现在把源程序附于此: 

#include  

#include 

using namespace std; 

int main () 

int a=2,b=3; 

double d; 

d=(double)(a+b); 

cout<

return 0; 

程序的运行结果如下图所示:

如果是在C语言中的话,采用printf(“%f”)输出的话,输出结果为5.00000,如果想要输出5.00的话就把输出语句改为printf("%0.2f"); 就可以了的啦哈!!C语言的输出会是按照格式控制符来输入和输出的。

要输出5.00的C语言程序的源程序如下:

#include  

void main () 

 int a=2,b=3;

 float d;

 d=(float)(a+b);

 printf("%0.2f\n", d); 

}

回答2:

输出的是5,5虽然是浮点数,但是cout输出的时候默认不把小数的尾0输出的,如果要输出尾0的话,要设置cout的输出格式。

回答3:

就是可以在int
double
float之间互相转换,

回答4:

首先你要知道,double在C++里面的取值范围是double 64 15-16 -1.7*10(-308)~1.7*10(308),所以,强制转换为double类型后,以整型的形式输出,如果你强制转换为float型,范围在 32 6-7 -3.4*10(-38)~3.4*10(38)之间,那么你的结果就会以小数的形式输出了,这主要区别去你强制转换是双精度型还是单精度型,看具体的题目要求,希望对你能有所帮助,呵呵...

回答5:

因为你定义的是整型,如果你定义的是浮点型不就是小数了吗,至于小数后面应该要有几位,在你定义浮点型想要几位就加几位