司没有给出预期的结果

问题描述:

代码:司没有给出预期的结果

float cordsStepAmountHeight; 
float cordsStepAmountWidth; 

coordStepAmountHeight=(2.0f/height); 
coordStepAmountWidth=(2.0f/width); 

其中宽度是2560和高度是1504(我的设备的分辨率)。

计算后,coordStepAmountHeight的值是0.0013297872这是正确的,但 是cordsStepAmountWidth出来为7.8125E-4(我认为是应该0.00078125)

为什么coordStepAmountWidth出来这个样子?这与变量被声明为一个float并且不能处理计算或其他事情有关吗?

这是相同的数字。这就是所谓的浮点数的科学表示。你可以在这里阅读更多关于它的信息:http://www.learncpp.com/cpp-tutorial/25-floating-point-numbers/

+0

太棒了,它只是让我困惑,为什么他们都代表不同。感谢你的回答。 – Zippy 2013-03-21 19:07:19

7.8125E-4和0.00078125与相同e-4表示x10^-4(除以10000)。所以他们在数学观点上是相同的。

+0

非常感谢! – Zippy 2013-03-21 19:07:34