C++ float与二进制的存储问题

参考链接:https://blog.csdn.net/wangyilong0516/article/details/11200623

看了上面的链接对计算机存储float的具体情况有了了解,然后脑袋一热的我就写下了如下的代码:

int a = 9;
float b = (float)a;
cout<<b<<endl;

我就在想为什么输出的b不是0.00000呢。后来又想一下C编译器不会这么蠢到(float)a这步直接把int的机器码成为float的机器码,也是符合人情。当你写出(float)a这一步的时候,C编译器把int型的机器码转换为float的机器码。

猜你喜欢

转载自blog.csdn.net/Snow_V/article/details/83624110