gdb

gdb

还是学习一下 gdb 怎么用。

编译的时候加 -g,启动 gdb 调试 gdb -tui std,这里 -tui 是图形化界面。注意图形化界面用终端输入输出(标准错误流也不行)之后会乱行,所以必须加上文件读写。

命令 缩写 作用
break b 设置断点
info i 描述程序状态,比如: i break 显示有哪些断点
delete d 删除断点,一般先使用 info 命令查看断点,之后使用 d + 断点号删除
run r 开始运行程序
until + 行号 运行到某一行停止
display disp 跟踪查看某个变量,每次停下来都显示其值
undisplay 取消跟踪
print p 打印内部变量值
watch 监视变量值新旧的变化
step 执行下一条语句,如果该语句为函数调用,则进入函数执行第一条语句
next 执行下一条语句,如果该语句为函数调用,不会进入函数内部执行(即不会一步步地调试函数内部语句)
continue c 继续程序的运行,直到遇到下一个断点
finish 如果进入了某个函数,返回到调用调用它的函数,jump out
set var name = v 设置变量的值
start st 开始执行程序,在main函数中的第一条语句前停下
quit q 离开gdb
kill k 终止正在调试的程序
posted @   do_while_true  阅读(89)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?

This blog has running: 1845 days 1 hours 33 minutes 11 seconds

点击右上角即可分享
微信分享提示