关于2-18的一点疑问
来源:2-18 选择题
kyb0
2018-09-19 22:40:41
D选项应该如何理解?int a=6.6,这其中有隐形转化,将double类型强制转化为整形,此时a的值是6,但是在输出时候是(double)6,这里也有一个转化过程,就是将整形的6转换成双精度的6.0,所以输出的时候应该是6.0吧,而不应该是6,不知道我这样的理解对不对?
5回答
FANGYUAN_
2018-11-01
先尝试一下
double a = 6; cout << a << endl; int b = 6.6; cout << (double)b << endl; double c = (double) b; cout << c << endl;
尝试之后 你就可能理解了
算法请爱我emmm
2018-09-27
你的理解没有错,但是他题目的意思是输出的结果6.0和6都是一样的,都是数值为6的数字
慕盖茨6136298
2018-09-21
但我做过实验,结果是6哦
Tender10
2018-09-20
1、是可以进行隐式转换,但并不是直接转换啊,直接转换的意思就是直接强制转换的意思。
2、
运行结果确实是0.5,不知道你是怎么写的呢,运行的结果是0。
Tender10
2018-09-20
(double)a是没有效果的,int类型不能直接转换成double类型的。一般整型计算想等到double类型的结果,可以参考如下代码:
int a=1; int b=2; double d=(double)a/b; cout<<d<<endl;
相似问题