gdb调试

前提:编译时添加 -g 选项,得到调试表 gcc gdbtest.c -o a.out -g

常用指令:

  • 打开 gdb 调试工具:gdb ./a.out
  • 列出源码以及行号:list 或者 l(按 list 1 即可从代码第一行开始显示,按 l 翻页)
  • 设置断点:b 或者 break,比如 b 45
  • 运行程序:run 或者 r
  • 下一条指令(越过函数):n 或者 next
  • 下一条指令(进入函数):s 或者 step
  • 查看变量的值:p 或者 printp i 代表查看变量 i 的值)
  • 结束当前函数调用:finish
  • 继续执行断点后续指令:continue(即执行到下一个断点,如果后续没有断点,则执行到程序结束)
  • 退出gdb当前调试:quit

其他指令:

  • 针对段错误:打开 gdb 后,直接使用 run 命令,程序停止的位置就是段错误出现的位置
  • 设置 main 函数命令行参数
    • set args 参数1 参数2(在 startrun 之前)
    • run 参数1 参数2
  • 查看断点信息表:info b
  • 设置条件断点:b 20 if i = 5
  • 查看变量类型:ptype
  • 查看当前程序正存活的栈帧:bt
  • 根据栈帧编号切换栈帧:frame 2
  • 设置跟踪变量:display
  • 根据跟踪变量的编号,取消设置跟踪变量:undisplay 2


不准投币喔 👆

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇