在编程测试中我被问到这个questino.问题是,我作为参数在float中传递,并询问以下代码何时为false.
bool result = (floatValue == floatValue);
Run Code Online (Sandbox Code Playgroud)
我想不出一个有效的理由或何时会出现这种情况,但仍然不能.最后,我回答说永远不会出现这种情况.想知道是否有人可以给我一些关于什么时候这是假的例子
在 C 中,测试一个浮点数是否为 NaN 与测试两个浮点数是否相等一样快吗?这isnan()与两个浮点数之间的简单相等测试一样快吗?
gcc我特别感兴趣的是在标准的现代 Intel/AMD 平台上使用。
这是一段 C 代码示例。
#include <math.h>
int main(double x)
{
return isnan(x);
}
Run Code Online (Sandbox Code Playgroud)