zoukankan      html  css  js  c++  java
  • Linux —— GDB调试程序

    调试实现

    • 在可执行文件中加入源代码的信息,比如可执行文件中第几条机器指令对应源代码的第几行,但并不是把整个源文件嵌入到可执行文件中,所以在调试时必须保证gdb能找到源文件。

    • 生成可执行文件命令: g++ -g 源文件.c -o 可执行文件

    常用命令

    命令描述
    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) 执行下一行语句,如果有函数调用则进入到函数中
    display 变量名 显示变量
    breakpoint 设置断点
    delete 断点编号 删除指定断点
  • 相关阅读:
    webuploader web 大文件上传源代码
    poj 1703 Find them, Catch them
    poj 1308 Is It A Tree?
    hud 1785 畅通工程
    食物链 poj 1182
    poj 1611 The Suspects 并查集
    poj 2524 并查集 Ubiquitous Religions
    The Suspects 简单的并查集
    cf 621D
    hdu2159
  • 原文地址:https://www.cnblogs.com/alihenaixiao/p/6283766.html
Copyright © 2011-2022 走看看