NaN 値の最初の出現について、デバッガーで C++ コードをチェックする簡単な方法はありますか?
質問する
6575 次
3 に答える
10
答えはここにあります:https ://stackoverflow.com/a/5394095/1326595
含めるだけ
#include <fenv.h>
そして、次の行をコードに追加します。
feenableexcept(FE_INVALID | FE_OVERFLOW);
デバッガーは信号をキャプチャすることができ、NaNの最初の発生を示します。
于 2012-08-14T05:59:49.137 に答える
5
IEEE 標準では、次の条件がの場合false
ですNaN
。
val == val
アサートまたはソフトウェア ブレークポイントをトリガーするために使用できますが、コンパイラの最適化に注意してください。おそらく、デバッグビルドでは最適化されません
于 2012-08-13T12:13:38.740 に答える
2
assert(val >= 0 || val <= 0)
NaN をキャッチするために an を入れることができます
于 2012-08-13T12:03:49.130 に答える