卡壳在哪里,就从这里补
很多 C/C++ 开发者遇到段错误、内存泄漏、死锁或多线程竞态时,第一反应是翻日志或加 printf 打印变量。但这类问题往往在「运行时上下文」消失后才暴露——变量已经变了,调用栈已经清空,线程已经换了状态,你看到的只是它死亡后的残余痕迹。这门课解决的不是语法或 API 使用问题,而是当你必须看穿程序内部状态时的能力缺口:如何用 GDB 精准定位正在发生的错误,重建执行现场,而不是靠猜测去复现一个稍纵即逝的 bug。
适合有基本 C/C++ 语法基础和 Linux 命令行使用经验的学习者。你不需要精通编译原理或操作系统内核,但需要理解程序是怎么跑起来的——知道可执行文件、共享库、地址空间这些概念,决定了你能不能理解「为什么断点设在这里能看到你想要的东西」,以及为什么有些符号表信息会缺失。
学习路径建议,别一上来就啃全部
建议按「准备→单步→状态查看→进阶控制→多线程专项」的顺序推进,别跳着学。前两节讲解调试准备工作与启动方式,这是地基,告诉你 GDB 怎么接上你的程序,以及最常见的启动失败原因(比如未开启调试信息、路径错误等)。接着看断点管理、变量查看与修改、内存查看与修改、寄存器查看与修改——这四节覆盖了你调试时最常问的四个问题:程序停在哪、数据长什么样、内存对不对、CPU 当前状态是什么。
如果你遇到多线程场景,把《多线程基础》《C++跨平台多线程知识》《多线程调试管理》《线程执行命令》《线程日志信息控制》这几节串起来看,别跳着学——线程调试的逻辑是层层叠加的,前面没搞懂线程模型,后面的命令解释你只会觉得是在变魔术。同时建议把《函数调用栈管理》和《源代码管理查看搜索》放在一起对照练习,理解调用链和源码定位的对应关系,否则调试时你只能看到一堆函数名而不知道自己在哪个调用层级。
学完能独立做什么,资料怎么用
完成这套课程后,你应该能独立做几件具体的事:在 Linux 环境下正确编译带调试信息的程序并启动 GDB;设置和管理断点、观察点、捕获点,并在断点触发时自动执行自定义命令;查看和修改变量、内存、寄存器,理解它们的二进制表示及其与 C 类型的对应关系;调试多线程程序,追踪线程执行顺序,收集线程级日志,分析竞态条件。
课程资料包里的练习视频不是一次性看完的——每节配一个最小复现场景,建议边看边在自己电脑上跑一遍,把命令敲进去,把断点设上去,亲手观察一次内存的变化。遇到抽象概念时,回去重看前面的基础章节,不要硬往下赶。别把资料包当仓库囤着,把它当练习册,做完一节练一节,能力才会真正长在你身上。
课程介绍
596a3d044818163-103-600x173.jpg 2025-1-4 20:20 上传 1-1linuxcc++调试准备工作.mp4 1-2启动调试.mp4 1-3调试断点管理.mp4 1-4变量查看与修改.mp4 1-5内存查看与修改.mp4 1-6寄存器查看与修改.mp4 1-7源代码管理查看搜索.mp4 1-8源代码管理查看搜索2.mp4 1-9函数调用栈管理.mp4 2-10为线程执行命令.mp4 2-11线程日志信息控制.mp4 2-12执行外部命令以及保存命令及输出.mp4 2-1观察点使用.mp4 2-2捕获点使用.mp4 2-3为断点执行命令.mp4 2-4gdb多窗口管理.mp4 2-5查看对象类型.mp4 2-6多线程基础.mp4 2-7c++跨平台多线程知识.mp4 2-8多线程调试管理.mp4 2-9线程查找线程断
课程目录
596a3d044818163-103-600x173.jpg 2025-1-4 20:20 上传 1-1linuxcc++调试准备工作.mp4 1-2启动调试.mp4 1-3调试断点管理.mp4 1-4变量查看与修改.mp4 1-5内存查看与修改.mp4 1-6寄存器查看与修改.mp4 1-7源代码管理查看搜索.mp4 1-8源代码管理查看搜索2.mp4 1-9函数调用栈管理.mp4 2-10为线程执行命令.mp4 2-11线程日志信息控制.mp4 2-12执行外部命令以及保存命令及输出.mp4 2-1观察点使用.mp4 2-2捕获点使用.mp4 2-3为断点执行命令.mp4 2-4gdb多窗口管理.mp4 2-5查看对象类型.mp4 2-6多线程基础.mp4 2-7c++跨平台多线程知识.mp4 2-8多线程调试管理.mp4 2-9线程查找线程断点.mp4 3-1跳转执行-任意执行代码穿越到过去和未来.mp4 3-2反向执行-调试中的undo.mp4 3-3调试子进程.mp4 3-4多进程调试.mp4 3-5调试时调用内部外部函数.mp4 3-6调试时跳过指定函数.mp4 3-7制作调试发行版.mp4 3-8软件补丁制作-直接编辑二进制程序.mp4 4-1内存泄漏检测.mp4 4-2检测各种内存问题检查泄漏栈溢出野指针等.mp4 4-3远程调试.mp4 4-4多线程死锁调试.mp4 4-5核心转储coredump基础.mp4 4-6栈溢出核心转储coredump分析.mp4 4-7无调试符号coredump分析.mp4 4-8软件




