Je vais faire des calculs mathématiques en C++. Le nombre à virgule flottante d'entrée est un nombre valide, mais après les calculs, la valeur résultante est NaN. Je voudrais tracer le point où la valeur NaN apparaît (éventuellement en utilisant GDB), au lieu d'insérer beaucoup de isNan()
dans le code. Mais j'ai trouvé que même un code comme celui-ci ne déclenchera pas d'exception quand une valeur NaN apparaît.Comment tracer un NaN en C++
double dirty = 0.0;
double nanvalue = 0.0/dirty;
Quelqu'un pourrait-il proposer une méthode pour tracer NAN ou transformer un NaN en une exception?
connexes: [? Puis-je faire gcc me dire quand un résultat de calcul NaN ou inf lors de l'exécution] (http://stackoverflow.com/questions/2941611/can-i-make-gcc-tell-me-when -a-calcul sur les résultats-en-nan-ou-inf-à-runtime/20973509) – legends2k
également http://stackoverflow.com/questions/5393997/stopping-the-debugger-when-a-nan-floating-point -Nombre-est-Produced – Riot