生成NaN浮点数时停止调试器

时间:2011-03-22 15:54:36

标签: c++ gdb floating-point nan

我有一个C ++程序。在程序的某处(难以重现,但可重现),caclculation导致浮动设置为NaN。由于涉及NaN的浮点运算导致NaN,因此传播速度很快。

有什么办法可以设置编译器(gcc 4.4)或debuger(gdb)在浮点运算产生NaN时停止?这将非常有用。

谢谢! 森

PS:可能很重要:我在ubuntu linux 10.10下工作。

1 个答案:

答案 0 :(得分:15)

您可以启用浮点例外 - 请参阅glibc Control Functions - 然后在生成SIGFPE值时获得NaN