VS2012使用条件断点和内存断点
2016-04-16 23:10
274 查看
1.条件断点
条件断点是指在达到设置的条件时才触发的断点。这在调试复杂问题时非常有用,比如循环程序。例如下面的代码片段:
int a=0; for(int i=0;i<1000;++i){ //... some code ++a; //... some code }
如果对a打下断点,那么每次循环的时候都会触发一次断点。此时我们可以为断点设置触发它的条件,使它满足指定条件时才触发。
以VS2012为例,可以通过在源代码窗口或者断点窗口找到该断点后,右击选择条件,操作如下图:
选择条件后会弹出设置条件的窗口,如下图所示。比如我们输入i==500的时候触发断点。那么当i==500的时候断点才会触发,其它情况下断点不会被触发。
2.内存断点
根据内存地址设置的断点叫做内存断点,Visual Studio中也叫作数据断点。内存断点只有在指定的地址处的变量被修改时,才会触发,访问指定的地址内容是不会触发内存断点的。应用场景:在很多情况要,一个变量使用的地方过多,我们不知道这个变量在何时何处被修改。使用内存断点就可以轻松搞定。
具体用法:
在程序中断的情况下,一次选择【调试】->【新建断点】->【新建数据断点(D)…】,会弹出如下对话框:
其中字节计数表示变量的类型大小,比如,int占用4个字节。
示例代码:
int test=0; int main(){ test=1; }
设置了上面的内存断点之后,当test被改变的时候就会触发断点,将程序中断在修改内存断点指定的内存地址的语句的下一条语句处,在VS2012中是这样的。
参考代码
[1]VS2008条件断点.[2]http://blog.csdn.net/joan11_3/article/details/9475725.
相关文章推荐
- KVM各种安装及虚拟机如何配置样板分享
- 测试代码
- 时间日期的使用
- VS2012使用条件断点和内存断点
- centos安装配置hadoop超详细过程
- NSOperation与GCD对比
- c++队问题
- 做事要提前留有余地,否则到时候就来不及了(超市买菜,找工作,交朋友,发脾气都是如此)
- javascript练习题(三)
- 面试之路(2)-百度算法题
- 关于Etag
- 面试之路(2)-百度算法题
- 面试之路(2)-百度算法题
- 修改UITextField的placeholder颜色
- LaTeX新人教程,30分钟从完全陌生到基本入门
- Android练习项目 Mp3播放器实现(一)
- 自定义Toast
- myeclipse 10 + Axis2-1.6.2 开发WebService
- 20145214 《Java程序设计》第7周学习总结
- Assurance 4000 Techniques for Industrial Control Systems (ICS)