gdb调试

2017-07-03  本文已影响0人  chappie2017

1.观察点

观察点是在内存发生变化的时候才中断的,下面实验验证了这一点:
测试程序

#include <iostream>
#include <stdio.h>

int main(){
    int i=0;
    int j=0;
    std::cout<<"ok"<<std::endl;
    int *p=&i;
    int *q=&j;
    std::cout<<"test i:"<<std::endl;
    *p=250;
    std::cout<<"test i&&j"<<std::endl;
    *q=1;
    return 0;
}

代码在gdb中对应的行号是:


代码行号

我们在第7行设置一个断点,表示i和j都已经初始化完成,当程序执行到这里的时候,表示可以为i和j设置观察点
我们设置一个观察点,第一个观察点是i,第二个观察点是i&&j
我们用指针p和q改变i和j的值,当它们发生改变时,我们看到到观察点捕获到了这一变化:

2.

上一篇 下一篇

猜你喜欢

热点阅读