利用条件断点进行程序调试

利用条件断点进行程序调试

在一个循环中如果使用简单断点来调试程序,那么将是非常耗时的。如果此时循环很多,根本就执行不完程序。所以Visual C++还提供了条件断点,也就是说在条件触发时断点才生效,程序进行到暂停状态。在程序进行到暂停状态前会弹出提示对话框,如图1.66所示。

 
图1.66  利用条件断点进行程序调试

条件需要断点设置对话框来设置,调用断点设置(Breakpoints)对话框需要执行Edit→Breakpoints命令或按Ctrl+B组合键。断点设置对话框如图1.67所示。

在断点设置对话框中选择Location选项卡,在Break at文本框中设置断点。文本框旁边的三角号可以提示当前光标的所在行,可以将断点设置在当前光标处,也可以通过高级断点设置对话框来通过指定在函数、源文件、可执行文件中的位置来设置指定断点。设置完断点后可以通过Condition按钮打开条件断点设置对话框,再设置断点生效的条件。条件断点设置对话框如图1.68所示。

 
图1.67  断点设置对话框
 
图1.68  条件断点设置对话框

用户可以在第一个文本框中输入断点生效的表达式,还可以在第三个文本框中设置跳过的次数。

(1)创建基于对话框的应用程序。

(2)在头文件DebugProgramDlg.h中添加OutputResult方法。

(3)OutputResult方法的实现代码如下:

 
 
  1. void CDebugProgramDlg::OutputResult()  
  2. {  
  3. CString strResult;  
  4. int iResult=0;  
  5. for(int i=0;i<50;i++)  
  6. {  
  7.             if(i%2==0)  
  8.                 iResult+=i;//设置断点处  
  9. }  
  10. strResult.Format("%d",iResult);  
  11. GetDlgItem(IDC_ED_RESULT)->SetWindowText(strResult);  
  12. }  

(4)在iResult+=i;处设置断点,然后设置断点的生效条件是iResult>10。

(5)按F5键运行程序,但断点生效时开始调试程序。

心法领悟023:条件断点的深层使用。

条件断点不仅可以设置普通变量,也可以设置为结构体变量。如果是结构体变量,就需要在条件断点设置对话框的第二个编辑框中设置是第几个成员。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值