int i=2,m;m=++i*++i;printf("%d",m);这个会打印出16float i=2,m;m=++i*++i;printf("%f",m);这个会打印出12.00000 –★–:我试了一下,在VC下仍打印出16.00000
为什么换个数据类型输出的结果会不一样?
我是在TC2.0上运行的。MYTC也试过。都是这样。
可这里面的I不是分数啊。如果发生了精度损失为什么打印出来的是12.00000 怎么算的呢?这个问题今天无意中发现的。让我很困惑。