永发信息网

const float PI=(float)3.14159;为什么在3.14159前面要加(float),不加可以吗?

答案:2  悬赏:10  手机版
解决时间 2021-12-31 03:40
  • 提问者网友:愿为果
  • 2021-12-30 18:13
const float PI=(float)3.14159;为什么在3.14159前面要加(float),不加可以吗?
最佳答案
  • 五星知识达人网友:像个废品
  • 2021-12-30 18:26
可以啊,那个是强制转换……
全部回答
  • 1楼网友:酒者煙囻
  • 2021-12-30 18:39
浮点型数在参与运算时,编译系统默认将float型强制转换为double型(隐形转换),float型与double型是有区别的,float型在内存中占用4个字节,而double型在内存中占用8个字节,所以后面加 f 是为了防止系统将float型的只读变量pi(有人把它叫常量)隐形强制转换成double型,这样做的最大原因可能是考虑它的移植性。 前面的const float是为了防止只读变量pi在程序运行过程中“遭受”改变,因为这是不允许的。 补充:楼上的回答不敢荀同,甚至有点“误人子弟”, “float是可以修改的”这个是有前提的,如果在本问题中,const float就不能修改,哪怕你用强制转换都不允许。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯