Floating point Inno设置-将整数652转换为浮点6.52?

Floating point Inno设置-将整数652转换为浮点6.52?,floating-point,inno-setup,Floating Point,Inno Setup,这可能是一个Pascal问题,而不是Inno设置问题。为什么我会这样做: floatnum := 652; 浮点数中存储的实际值是6.520万,而不是652.000000 更新:有人指出6.52实际上是652,这让我很困惑,所以我想我应该更具体一些。以下是一些我遇到问题的代码: floatnum := 305 / 600; 我预计floatnum将保持在接近0.5083333的水平,但事实并非如此,而是保持在5.08333325的水平。我觉得那不合适。我遗漏了什么?我认为您遗漏了整个调试器的

这可能是一个Pascal问题,而不是Inno设置问题。为什么我会这样做:

floatnum := 652;
浮点数中存储的实际值是6.520万,而不是652.000000

更新:有人指出6.52实际上是652,这让我很困惑,所以我想我应该更具体一些。以下是一些我遇到问题的代码:

floatnum := 305 / 600;

我预计floatnum将保持在接近0.5083333的水平,但事实并非如此,而是保持在5.08333325的水平。我觉得那不合适。我遗漏了什么?

我认为您遗漏了整个调试器的值解释。请参见以下屏幕截图:

该值还确认了下一行:


您能再显示一点代码吗?将整数转换为浮点(在Innosetup或Pascal中)不会任意“除以100”。这里肯定还有别的事。。。嗯…@paul这是密码。我将floatnum声明为
floatnum:Single当我在任务完成后在调试器中查看它时,它说6.5200000.TLama给了你正确的答案(顺便说一句,我永远不会猜到)。它没有显示“6.52”。它正在显示“6.52*10^2”!PS:你可能会喜欢的很酷的视频:@我都没意识到。我已把答案标为正确。谢谢,我还是不明白。我更新了我的问题。6.52应该是6.52它是怎样的652?如果你赋值652,那么它就表示为6.52 x 10^2。这就是所谓的@Deanna在C中我可以做到这一点
float floatnum=652将显示652.000000。我完全错过了Inno中的指数,尽管它相当明显,因为它就在那里:)