-10

奇怪的浮点比较

如图所示,rotCount 为 1.0f。但是,当将 rotCount 与 0.0f 进行比较时,调试器会进入 if 语句,这是不应该发生的。

我使用 Visual Studio 2010 的默认调试模式并关闭优化。这是这段代码的反汇编。 在此处输入图像描述

好像fcomp之后没有生成test和jump汇编代码。这被认为是 VS2010 中的错误吗?有谁知道为什么?

4

1 回答 1

31

您的 if 语句末尾有一个分号,因此 if 不控制该块。去掉它

于 2013-10-25T07:05:45.820 回答