永发信息网

C语言 定义int i=8 为什么表达式y=float(i)是正确的

答案:6  悬赏:70  手机版
解决时间 2021-04-19 17:25
  • 提问者网友:蓝莓格格巫
  • 2021-04-19 09:46
C语言 定义int i=8 为什么表达式y=float(i)是正确的
最佳答案
  • 五星知识达人网友:骨子里都是戏
  • 2021-04-19 10:54
这是C语言里的强制转换,明确要求编译器把数值从一种数据类型转换为另一种数据类型,这就是强制转换,也叫做显示转换.
把8转变成float类型,就变成了8.0,这是允许的. 当然反过来转换也是允许的,但很有可能造成数据丢失,比如float类型的8.2转成int类型,就会变成8,那么0.2就丢失了.
全部回答
  • 1楼网友:雪起风沙痕
  • 2021-04-19 16:06
引用zj5815的回答:
这是C语言里的强制转换,明确要求编译器把数值从一种数据类型转换为另一种数据类型,这就是强制转换,也叫做显示转换.
把8转变成float类型,就变成了8.0,这是允许的. 当然反过来转换也是允许的,但很有可能造成数据丢失,比如float类型的8.2转成int类型,就会变成8,那么0.2就丢失了.错了吧,强制转化是(float) 8,不能写曾成float (8),而且这个表达式是错的,为什么会是对的,奇怪
  • 2楼网友:詩光轨車
  • 2021-04-19 15:01
强制类型转换。
如果y是float型的 y=i这个也是正确的。
  • 3楼网友:上分大魔王
  • 2021-04-19 13:32
兼容
  • 4楼网友:躲不过心动
  • 2021-04-19 12:32
类型转换啊
  • 5楼网友:大漠
  • 2021-04-19 11:50
类型转换,不过精度高的向精度低的转换会造成精度丢失
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯