c - 如何在 CLion 中设置断点条件
问题描述
我在使用 C 应用程序时遇到了一些问题。我正在CLion
(windows)中写作,我有一个for
循环,1 to 1000
但在i = 600
循环内的代码周围的某个时刻返回了错误。
此时,我对为什么会出现这个问题不感兴趣,而是对如何找到它感兴趣,所以我尝试调试应用程序但无法达到F7
600 次。
那么当我说 590 时,有什么方法可以开始调试吗?
解决方案
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;
}
推荐阅读
- html - 文档为空( lxml.etree.ParserError: Document is empty )
- python - 序列上的迭代器
- excel - Excel 无法将宏分配给按钮
- android - 如何仅在活动上动画淡出
- reactjs - Material UI 如何连接步进器线并更改连接器的颜色
- java - 根据条件从下一行中选择一个项目
- swift - 合并 Timer.TimerPublisher 未启动
- python - 如何在计算连续数字之间的差异后从列表中获取原始数字
- c# - System.Data.SqlClient.SqlException:'必须声明标量变量“@SSN”
- css - Chrome 媒体查询故障:媒体查询过早触发