zoukankan      html  css  js  c++  java
  • GDB简单使用

    GDB简述
    一、程序中加入调试信息:gcc -g -o a.ddebu a.c
    二、启动gdb:gdb
    三、常用命令
      1.backtrace:显示程序中的当前位置和表示如何到达当前位置的栈跟踪(同义词:where)。
      2.breakpoint:在程序中设置一个断点
      3.cd:改变当前工作目录。
      4.clear:删除刚才停止处的断点。
      5.commands:命中断点时,列出将要执行的命令。
      6.continue:从断点开始继续执行。
      7.delete:删除一个断点或监测点,也可与其他命令一起使用。
      8.display:程序停止时显示变量和表达式。
      9.down:下移栈帧,使得另一个函数成为当前函数。
      10.frame:选择下一条continue命令的帧。
      11.info:显示与该程序有关的各种信息。
      12.info break:显示当前断点清单,包括到达断点处的次数等。
      13.info files:显示被调试文件的详细信息。
      14.info func:显示所有的函数名称。
      15.info local:显示当前函数中的局部变量信息。
      16.info prog:显示被调试程序的执行状态。
      17.info var:显示所有的全局和静态变量名称。
      18.jump:在源程序中的另一点开始运行。
      19.kill:异常终止在gdb控制下运行的程序。
      20.list:列出相应于正在执行的程序的源文件内容
      21.next:执行下一个源程序行,人而执行其整体中的一个函数。
      22.print.显示变量或表达式的值。
      23.pwd:显示当前工作目录。
      24.pype:显示一个数据结构(如一个结构或C++类)的内容.
      25.quit:退出gdb.
      26.reverse-search:在源文件中反向搜索正规表达式。
      27.run:执行该程序。
      28.search:在源文件中搜索正规表达式。
      29.set variable:给变量赋值。
      30.signal:将一个信号发送到正在运行的进程。
      31.step:执行下一个源程序行,必要时进入下一个函数。
      32.undisplay display:命令的反命令,不要显示表达式。
      33.until:结束当前循环。
      34.up:上移栈帧,使另一个函数成为当前函数。
      35.watch:在程序中设置一个监测点(即数据断点);
      36.whatis:显示变量或函数类型。
    四、习惯性操作
      1.导入文件:file /test.debug
      2.查看文件:list
      3.加入断点行数:break 6
      4.运行程序:run
      5.运行到第一个断点,step,程序运行一步
      6.显示当前变量的值:pirnt **
      7.退出:q

  • 相关阅读:
    mysql数据库基本类型
    常用辅助类【转】
    Java 并发笔记】并发机制底层实现整理[转发]
    关于PROPAGATION_NESTED的理解
    线程数设置
    c# Expression 扩展[转]
    Net定时器 【转载】
    【转】高可用设计-58沈剑
    【转】委托的三种调用示例(同步调用 异步调用 异步回调)
    [coursera OA] acme match
  • 原文地址:https://www.cnblogs.com/sail/p/9908497.html
Copyright © 2011-2022 走看看