已有声明“double x=3.5;”,表达式“(int)x+x”值的类型是?

发布网友 发布时间:2022-04-22 22:56

我来回答

2个回答

热心网友 时间:2022-07-12 23:21

(int)x得到整型结果,(int)x+x由于后一个变量的类型是double,因此计算机会将前一个整型结果转换成与后一个的类型一致后再进行计算,因此得到double型结果

热心网友 时间:2022-07-12 23:21

如果说 int y = (int)x+x 的话, y是int类型; 如果说 double y = (int)x+x 这个y是double类型;
如果printf("%d\",(int)x+x)) 这个%d输出的是整型数字;
如果printf("%lf\",(int)x+x)) 这个%d输出的是浮点型数字;
我觉得把你问的一切都回答了,
事实证明,关键的不是在内存中存什么, 而是你要怎么去解析他;

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com