c语言隐式转换,C语言隐式转换规则

dfnjsfkhak 11 0

大家好,今天小编关注到一个比较意思的话题,就是关于c语言隐式转换问题,于是小编就整理了3个介绍c语言隐式转换的解答,让我们一起看看吧。

  1. C语言中,数据类型的隐式转换与显式转换分别是个什么意思?
  2. c语言中实型变量可以存放整型数吗?
  3. C语言中int后是一个带有小数的数字,那么它的值是多少?

C语言中数据类型的隐式转换与显式转换分别是个什么意思?

隐式转换就是不带转换类型的转换,如intfloat可以这样子floata;intb=4; a=b就是隐式转换,而a=(float)b就是显示转换。区别在于当向下转换时如果不显示转换就会有问题,如floata=4.5;intb=a;这里就可能报错,因为int可以自动上升为float,但由float不能自动转化为int,这里就需要显式转换,即intb=(float)a才是最保险的;所以显式转换肯定不会出错,但隐式转换就说不定了。

c语言中实变量可以存放整型数吗?

是可以的。

c语言隐式转换,C语言隐式转换规则-第1张图片-芜湖力博教育咨询公司
图片来源网络,侵删)

在C语言中实型变量用double类型来运算,double类型占用8个字节,而int类型是4个字节,所以把4个字节的东西放到8个字节中,是可以的。但是反过来,把double放到int里就是不行了(8个字节是无法放到4个字节里)。

C语言会将整型数值隐式转换为浮点型数值后赋值给浮点型变量。例:double d = 10;实际上相当于:double d = (double)10。

C语言中int后是一个带有小数数字,那么它的值是多少

例子:int(2.5+4.7)的值为:7,先求和,再将浮点型7.2强制转化为整形7。若不带括号,如:(int)2.3+5.5,则先将2.3强制转化为2,再和5.5相加结果为7.5(2和5.5相加时,2先隐式转化为浮点型再跟5.5相加)。

c语言隐式转换,C语言隐式转换规则-第2张图片-芜湖力博教育咨询公司
(图片来源网络,侵删)

到此,以上就是小编对于c语言隐式转换的问题就介绍到这了,希望介绍关于c语言隐式转换的3点解答对大家有用

c语言隐式转换,C语言隐式转换规则-第3张图片-芜湖力博教育咨询公司
(图片来源网络,侵删)

标签: 转换 中实 语言