如何在特定变量值中停止调试器?

时间:2011-05-18 16:53:00

标签: visual-studio debugging

如果某个特定变量具有已定义的值,我如何设置de debugger?例如,我有一个代码崩溃,循环10000次进行一些后处理。我知道错误可以从7000次迭代中产生,所以我想从那里停止,避免从第一次7000的手动循环。 我使用visual studio 2008和2010与c#,我认为解决方案对两者都是一样的。

3 个答案:

答案 0 :(得分:41)

您正在寻找的是一个条件断点。假设变量名称为i

,以下是设置方法
  • 在设置值
  • 后在行上设置正常断点
  • 右键单击断点的红点部分,然后选择“条件”
  • 输入您要检查的条件。示例:i == 10000
  • 点击确定

现在再次运行您的方案,只有当i的值等于10000时才会触发断点。

一句警告。您可以将任何合法的C#表达式放入条件断点,但每次达到断点时都会对其进行求值。如果使用复杂的条件

,这可能会导致调试速度非常慢

答案 1 :(得分:0)

打开断点窗口并从其菜单中创建一个新的数据断点。

答案 2 :(得分:-1)

这样做的简单方法是:

if(nameVariable = X){ BreakPoint:nameVariable; }