【double a】doublea=0;这样定义对吗?
答案:2 悬赏:0 手机版
解决时间 2021-02-14 22:25
- 提问者网友:伴风望海
- 2021-02-14 09:10
【double a】doublea=0;这样定义对吗?
最佳答案
- 五星知识达人网友:woshuo
- 2021-02-14 10:22
【答案】 首先说,这样写是没有问题的.
但其实程序隐含的进行了一次数据类型的隐式转换.
因为0实际上是一个 int类型,赋予double类型的a的时候,需要把(int)型的0转换成(double)型的0,然后赋给a.
int -> double的转换是允许的,因为后者的范围大于前者.
所以这样写定义没有问题. 追问: 就是说这样定义更准确 double a=0.0; 是吗? 追答: 其实写成double a = 0是完全可以的。:) 有一点需要注意了,比如说想把2/5赋给a的话,不能写成double a = 2/5,而一定要写double a = 2.0/5.0,因为先做2除以5的话是按整数做的,2/5就等于0了。
但其实程序隐含的进行了一次数据类型的隐式转换.
因为0实际上是一个 int类型,赋予double类型的a的时候,需要把(int)型的0转换成(double)型的0,然后赋给a.
int -> double的转换是允许的,因为后者的范围大于前者.
所以这样写定义没有问题. 追问: 就是说这样定义更准确 double a=0.0; 是吗? 追答: 其实写成double a = 0是完全可以的。:) 有一点需要注意了,比如说想把2/5赋给a的话,不能写成double a = 2/5,而一定要写double a = 2.0/5.0,因为先做2除以5的话是按整数做的,2/5就等于0了。
全部回答
- 1楼网友:鱼忧
- 2021-02-14 11:26
我好好复习下
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯