gdb调试

作者: chappie2017 | 来源:发表于2017-07-03 16:09 被阅读0次

    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.

    相关文章

      网友评论

          本文标题:gdb调试

          本文链接:https://www.haomeiwen.com/subject/oafzcxtx.html