zoukankan      html  css  js  c++  java
  • gdb调试

    gdb调试程序:

    gdb program或gdb attach processId

    常用的命令有:

    list l  列出代码

    run r 运行程序

    continue c 继续程序的运行

    print p 打印变量值

    next n 执行下一条语句

    step s 若为函数调用,则进入函数内部

    finish 结束函数运行,返回上一层

    break b 设置断点

    watch 观测变量值

    backtrace bt 观测堆栈信息

    先以一个C++程序来介绍gdb各个命令的使用方法

    #include<iostream>
    using namespace std;
    
    int fun(int i) {
     int s = i * i;
     cout << s << endl;
     return 0;   
    }
    
    int main(int argc, char* argv[]) {
      int a = 0;
      a = 1;
      a = 2;
      fun(a);
      return 0;
    }

    利用g++编译,加入调试信息:g++ -Wall -g test.cpp -o test  其中-Wall标志意思是显示全部的警告信息, -g即gdb调试信息。

    使用gdb test 开始调试或者先输入gdb,然后在gdb命令行中输入file test来调试,如下所示:

    然后list,设断点,打印print变量

    watch观察变量

  • 相关阅读:
    关于Android反编译
    调用图灵机器人API实现Android智能机器人
    STM32 驱动1602液晶
    1602A液晶
    STM32 PWM波
    STM32的优先级NVIC_PriorityGroupConfig
    STM32——timer
    Ajax Json的后台例子
    固定导航例子
    本周学习总结
  • 原文地址:https://www.cnblogs.com/sssblog/p/9934575.html
Copyright © 2011-2022 走看看