VS2012添加数据断点


  程序运行出错时, 添加断点单步调试程序是检查错误所在的基本方法. 但是当程序更加复杂时, 我们往往需要确定某个全局变量或者成员变量是在什么时候被修改的. 这个时候使用普通的位置断点(F9)进行单步调试往往不能很好的确定到底是哪里出现的问题.
  F10, F11, F10, F10, F11, F10… 哎呀卧槽按过了, 又要重新来…
  没有什么比这种情况更加令人恼火.

数据断点

  数据断点可以让程序在指定的一块内存发生变化时停止运行.

添加数据断点

  数据断点只能在调试状态下添加 ( 毕竟你要指定一块内存, 可以看到未运行时无法添加数据断点 )
  新建数据断点

// 数据断点示例
#include<iostream>
using namespace std;
int gVariable = 10;

int main()
{
    cout << "gVariable = " << gVariable << endl;

    // 命中数据断点
    gVariable = 20;

    cout << "gVariable = " << gVariable << endl;

    system( "PAUSE" );
    return 0;
}

  我们首先利用位置断点将程序中断在第6行的输出语句上, 然后在”调试->新建断点->新建数据断点”中新建一个数据断点.
  这里写图片描述

  通过监视可以看到运行时程序为gVariable分配的内存地址是0x0032f000
  这里写图片描述

  这时我们按两次F10, 第二次将执行赋值语句gVariable = 20; 此时将会命中之前的数据断点.
  这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值