当前位置: 首页> 科技> 互联网 > 南昌装修网站建设_国外高清人像图片素材网站_精准广告投放_适合网络营销的产品

南昌装修网站建设_国外高清人像图片素材网站_精准广告投放_适合网络营销的产品

时间:2025/7/21 14:35:51来源:https://blog.csdn.net/qq_16204521/article/details/147197134 浏览次数:0次
南昌装修网站建设_国外高清人像图片素材网站_精准广告投放_适合网络营销的产品

🐞 GDB 调试命令详解:高效掌握常用调试技巧

GNU Debugger(GDB)是 Linux 下最强大的 C/C++ 调试工具。本文将系统梳理 GDB 的常用命令,覆盖运行控制、断点管理、变量查看、线程与进程调试等核心功能,助你快速掌握高效调试技巧。

🎯 一、程序运行与控制

命令简写功能说明
runr启动程序运行
continuec继续执行到下一个断点
nextn单步执行,不进入函数
steps单步执行,进入函数
until——执行至当前循环结束或指定行
finish——执行至当前函数返回
call 函数(参数)——调用函数
quitq退出 GDB

⛳ 二、断点管理

📍 2.1 设置断点(Breakpoint)

break 42
break main.c:42
break my_func
break func if x==3

🧹 2.2 删除与控制断点

delete 1
disable 1
enable 1
info breakpoints
clear 42

💾 2.3 断点持久化

save breakpoints bp.txt
source bp.txt

🕵️ 三、监视点(Watchpoint)

watch var
rwatch var
awatch var
info watchpoints
set can-use-hw-watchpoints 0/1

🧱 四、查看源代码

list
list 100
list main

📦 五、表达式与变量

命令功能
print var / p var打印变量值
display var自动显示变量值
whatis var查看变量类型
info functions显示函数信息
info locals显示局部变量

🧠 六、内存与地址

x/3uh 0x54320
  • 显示格式:x(十六进制)、d(十进制)、u(无符号)、c(字符)、f(浮点)
  • 单位大小:b(1 字节)、h(2 字节)、w(4 字节)、g(8 字节)

📊 七、程序运行信息

where / bt
up / down
info program
set args arg1 arg2
show args

🪟 八、窗口布局

layout src
layout asm
layout regs
layout split
Ctrl + L

🔀 九、多线程调试

info threads
thread 2
break file:line thread all
thread apply all bt

🧷 线程调度锁

set scheduler-locking on
set scheduler-locking off
set scheduler-locking step

🧬 十、多进程调试

set follow-fork-mode child
set detach-on-fork off

📂 十一、源码路径与信号控制

set substitute-path /old/path /new/path
handle SIGPIPE nostop noprint
  • stop:暂停程序
  • nostop:不暂停
  • print/noprint:是否输出信息
  • pass/nopass:是否传递信号给程序

✅ 总结

  • 熟练掌握缩写命令(如 rnsp)能显著提升调试效率。
  • 合理使用断点与监视点,可以大大简化定位 bug 的过程。
  • 多线程、多进程调试技巧适用于复杂项目环境。
关键字:南昌装修网站建设_国外高清人像图片素材网站_精准广告投放_适合网络营销的产品

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: