zoukankan      html  css  js  c++  java
  • linux中gdb的可视化调试

      今天get到一个在linux下gdb调试程序的技巧和大家分享一下!平时我们利用gcc进行编程,进行程序调试时,观察程序的跳转等不是这么直观。都是入下的界面!

      但是如果我们在编译连接时上加了-g命令生成的可执行文件,用gdb -tui -q p2psrv(要debug的命令),就可以进入一个类似的可视化的调试界面。

      之后相信一些基本的gdb操作大家都应该清楚。

    backtrace:查看各级函数调用及参数

    finish:连续运行到当前函数返回为止,然后停下来等待命令

    frame(或f) 帧编号 :选择栈帧

    info(或i) locals :查看当前栈帧局部变量的值

    list(或l):列出源代码,接着上次的位置往下列,每次列10行

    list 函数名: 列出某函数的源代码

    next(n):执行下一行语句

    print(或p):打印表达式的值,通过表达式可以修改变量的值或者调用函数

    quit(或q):退出gdb调试环境

    set var:修改变量的值

    start:开始执行程序,停在main函数第一句前面等待命令

    step;执行下一句语句,如果有函数调用则进入函数中

      大家可以赶快去试一下吧!  

    命令描述
    backtrace(或bt) 查看各级函数调用及参数
    finish 连续运行到当前函数返回为止,然后停下来等待命令
    frame(或f) 帧编号 选择栈帧
    info(或i) locals 查看当前栈帧局部变量的值
    list(或l) 列出源代码,接着上次的位置往下列,每次列10行
    list 行号 列出从第几行开始的源代码
    list 函数名 列出某个函数的源代码
    next(或n) 执行下一行语句
    print(或p) 打印表达式的值,通过表达式可以修改变量的值或者调用函数
    quit(或q) 退出gdb调试环境
    set var 修改变量的值
    start 开始执行程序,停在main函数第一行语句前面等待命令
    step(或s) 执行下一行语句,如果有函数调用则进入到函数中
  • 相关阅读:
    cmd中删除、添加、修改注册表命令
    修改注册表使win server 2012R2开机进入桌面而不是开始界面
    win8.1/2012R2上面安装flash debugger
    ANT中的copy和move标签
    用maven在MANIFEST.MF文件中的Class-Path中增加当前目录(.)
    通过ANT生成MANIFEST.MF中的Class-Path属性
    Junit4进行参数化测试
    DbUnit入门实战
    oracle查看当前正在使用的数据库
    左偏树 P3377【模板】左偏树(可并堆)
  • 原文地址:https://www.cnblogs.com/wannable/p/6048894.html
Copyright © 2011-2022 走看看