利用数据断点进行程序调试

来源:互联网 发布:mysql数据库优化 编辑:程序博客网 时间:2024/05/29 10:39

利用数据断点进行程序调试

数据断点是指对指定变量进行监控,程序运行到变量值发生改变时进入调试状态,进入调试状态前会弹出一个确认对话框,实例对iResult变量进行监控。当iResult值发生改变时弹出对话框,如图1.69所示。

 图1.69  利用数据断点进行程序调试

数据断点需要通过Breakpoints对话框来设置,在Data选项卡中可输入需要监控的变量。如果是结构体变量或者数组,还需要输入是第几个成员或元素。

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

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

(3)定义整型全局变量iResult。

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

  1. void CDebugProgramDlg::OutputResult()  
  2. {  
  3. CString strResult;  
  4. 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. }  

(5)按Ctrl+B组合键打开断点窗口,选择Data选项卡。

(6)在表达式编辑框中输入"iResult",如图1.70所示。

 

 图1.70  Breakpoints对话框

 

(7)按F5键运行程序,单击程序中的"确定"按钮,当变量iResult值发生变化时进入调试状态。

心法领悟024:使用数据断点的注意事项。

数据断点只能对全局变量进行监控,对于局部变量是无效的,因为全局变量出现错误的概率要比局部变量的大,而且全局变量可以在不同的源文件内引用,通过数据断点可以很快地定位到出错的位置。