Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/152.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 浮点变量何时不等于自身_C++_Floating Point - Fatal编程技术网

C++ 浮点变量何时不等于自身

C++ 浮点变量何时不等于自身,c++,floating-point,C++,Floating Point,我在一次编程测试中被问到这个问题。问题是,我被作为一个参数以浮点形式传递,并被问到以下代码何时为false bool result = (floatValue == floatValue); 我想不出一个合理的理由,或者说什么情况下这会是错误的,但仍然不能。最后,我回答说,永远不会有这种情况是错误的。我想知道是否有人能给我举一些例子,说明什么时候这是错误的 如果floatValue是非数字计算的结果,如0/0。//从电话中发布。意志edit@M.M当比较两个不同的浮点值时,这是正确的,但在这

我在一次编程测试中被问到这个问题。问题是,我被作为一个参数以浮点形式传递,并被问到以下代码何时为false

bool result  = (floatValue == floatValue);
我想不出一个合理的理由,或者说什么情况下这会是错误的,但仍然不能。最后,我回答说,永远不会有这种情况是错误的。我想知道是否有人能给我举一些例子,说明什么时候这是错误的


如果floatValue是非数字计算的结果,如0/0。

//从电话中发布。意志edit@M.M当比较两个不同的浮点值时,这是正确的,但在这种情况下,我认为您是在比较一个变量和它本身。@M.M.不确定我是否理解
floatValue
这里指的是相同的左值。它只储存一次。我完全忘记了南。如果floatValue为INF,这是否也适用?或者这只是针对floatValue为NaN的情况?仅针对NaN。无穷大通常比较(-infinity<任何实数<+无穷大;+无穷大==+无穷大;等等)。