如何在CLion中设置断点条件

时间:2018-11-19 12:12:07

标签: c debugging clion

我在使用C应用程序时遇到一些问题。我在CLion(Windows)中编写,并且从for开始有1 to 1000循环,但是在i = 600周围的某个时刻,循环中的代码返回了错误消息。

在这一点上,我对为什么会出现此问题不感兴趣,但对如何找到它不感兴趣,因此我尝试调试该应用程序,但无法击中F7 600次。

当我说590时,有什么方法可以开始调试?

1 个答案:

答案 0 :(得分:1)

CLion允许您设置条件断点。考虑下面的代码,因为它从数组末尾运行,因此在循环601上将表现出不良行为。

要捕获此错误,请在进行分配的行上设置一个断点。

然后,右键单击断点,并将以下内容添加到对话框的条件框中:

i == 599

然后,运行代码,仅当i == 599时,调试器才会在断点处停止。这很神奇!

#include <stdio.h>

int main()
{
    char array[600];

    for (int i = 0; i < 1000; i++) {
        // code that does something

        array[i] = 0xff; // set breakpoint here!
        //, then right click and add conditional:  i == 590
    }

    printf("Hello, World!\n");
    return 0;
}