gpt4 book ai didi

c - 在 Visual Studio 2017 调试器中查找 NaN 出现的根源

转载 作者:行者123 更新时间:2023-11-30 16:16:19 27 4
gpt4 key购买 nike

我想找到我的 C 代码中第一次出现的 NaN 值。我目前正在使用 Visual Studio 2017 调试器。

有没有简单的方法可以做到这一点?我想象一个条件,检查范围内的所有变量,如果 NaN 发生则在此时中断。好像没有这个功能。有人有类似的东西吗?我也愿意接受其他调试解决方案(与 Matlab C-Mex-Files 一起运行)。

最佳答案

阅读自the link posted above ,似乎在 Visual Studio 中每个解决方案最多可以有 4 个数据断点,在我看来,它们的设置和维护可能相当麻烦。

另一种方法是插入对 NaN 的手动检查,具体取决于您拥有多少“实时”变量。要么编写一个可变参数函数,例如:

bool isnan_any(int count, ...) {
va_list argp;
va_start(argp, count);
while (count--) {
double d = va_arg(argp, double);
if (isnan(d)) {
va_end(argp);
return true;
}
}
va_end(argp);
return false;
}

并传递您当前想要检查的任何变量,或者收集指向数组中所有double的指针,并将其传递到您的isnan-check函数中.

关于c - 在 Visual Studio 2017 调试器中查找 NaN 出现的根源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56648618/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com