C语言数据类型 超级简单 但我不会 😭

img


这个是发生了强制类型转换吗,从double到short类型。谢谢,真的很想知道答案,希望会的人可以回复一下感谢

x=y * 10
y * 10的结果为23.67,还是double型
然后将double值赋值给x,因为x为short,短整型,所以会丢弃掉double型中的小数部分,且是截尾法,哪怕小数部分是0.9999999也会扔掉,所以x最终值为23

short x=10;也可以这样理解为short x;就是先定义一个变量,后面运算就会重新赋值,就就是变成了x=23;他这里是short,也算是int 的一样,所以结果是整数23;