麻烦老师解答一下

来源:3-7 选择练习

慕沐7480834

2022-06-20 20:51:35

为什么已经定义一个 单精度变量 float f=1.23;  会是错的呢,是不是单精度 如果是小数点后面两位的话必须加一个f才是对的,比如float f=1.23f; 就是正确的,那么如果A选项double d=12.3; 这样的话A选项是对还是错啊

写回答

1回答

好帮手慕小黑

2022-06-21

同学你好,在编译器上默认小数的表示方式是双精度的也就是double类型,双精度转单精度(float)编译器会认为会精度丢失,所以要强制类型转换。如:float d=(float) 12.3; 综上所诉,A选项是对的。

祝学习愉快!

0

0 学习 · 9886 问题

查看课程