人工精选Linux C++GDB调试入门到精通【GDB内存王牌】
如果你写 C++ 但主要工作在 Linux 上,迟早会遇到一类场景:程序在本地跑得好好的,上线后偶发崩溃、内存越跑越大、多进程之间数据对不上。这时候靠 printf 和日志往往定位不到根因,真正能救场的是调试器。这门课讲的就是 GDB 这一块,主题很聚焦,不铺开讲 C++ 语法,也不讲构建系统,就是
会员可免费下载本篇月会员可免费领取。
开通会员 ›会员 · 按档位
游客按标价购买,不享受上表折扣。
支付成功后自动发放网盘链接,链接失效可找客服免费补
如果你写 C++ 但主要工作在 Linux 上,迟早会遇到一类场景:程序在本地跑得好好的,上线后偶发崩溃、内存越跑越大、多进程之间数据对不上。这时候靠 printf 和日志往往定位不到根因,真正能救场的是调试器。这门课讲的就是 GDB 这一块,主题很聚焦,不铺开讲 C++ 语法,也不讲构建系统,就是把 Linux 下用 GDB 排查问题这件事讲透。
它解决的是哪类工作问题
最典型的三类:一是程序崩溃后只留下一个核心转储文件,你得从里面还原出崩溃时的调用栈和变量状态;二是内存相关的疑难杂症,比如越界写、悬空指针、栈被踩坏,这类问题现象和原因往往隔得很远;三是多进程程序,父进程 fork 出子进程后,想跟进去看子进程在干什么,默认行为会跟丢。课程里对应的几个部分——观察点、多进程调试、栈溢出与核心转储分析——基本就是围绕这些真实场景展开的,不是为了讲命令而讲命令。
适合的基础是:能写日常的 C++ 代码,知道指针、引用、栈和堆大概是怎么回事,在 Linux 下用过编译和运行命令。不需要你之前用过 GDB,从启动调试、断点、单步这些基本操作开始是能跟上的。但如果你连编译报错都还看不太懂,建议先把 C++ 基础和 Linux 命令行补一补再来,否则调试器里的信息你会读不出来。
建议的观看顺序和练习方式
不建议从头顺着播。先看基础操作那部分,把启动、断点、查看变量、单步这几件事在手上跑熟,这是后面所有内容的地基。然后按你的实际需求挑:手上正被内存问题折磨,就先看观察点和内存检测相关的内容;在做多进程服务,就直接跳到多进程调试那一块;如果线上已经有崩溃日志,核心转储分析可以提前看。调试这类技能看会不等于会用,每一节最好都自己写一个能复现问题的小程序,故意制造一个越界或者空指针,然后用刚学的方法把它找出来。只看视频不动手,过两周基本就忘了。
学完能独立做什么
比较现实的目标是:拿到一个崩溃产生的核心转储,能自己加载进去、读出调用栈、定位到出问题的函数和大致行号;程序卡死或者行为异常时,能挂上调试器看当前线程在做什么、关键变量的值对不对;遇到内存被破坏的问题,能用观察点把写入发生的位置盯出来;多进程程序里能切换调试目标,跟到子进程内部。这些能力在排查线上问题时是实打实省时间的,也是面试里容易被追问的点。需要说明的是,调试能力靠的是反复实战积累,这门课给的是方法和套路,真正的熟练度还得靠你自己在项目里多用。
课程目录
课程目录38 集
- 孙海洋Linux C++ GDB调试入门到精通【GDB内存王牌】说明.png [493.5 KB] 3-4多进程调试 【】.mp4
- [52.1 MB] 1-7源代码管理查看搜索 【】.mp4
- [29.2 MB] 2-1观察点使用 【】.mp4
- [46.5 MB] 4-6栈溢出核心转储coredump分析 【】.mp4
- [58.6 MB] 3-6调试时跳过指定函数 【】.mp4
- [28.9 MB] 3-5调试时调用内部外部函数 【】.mp4
- [41.8 MB] 3-8软件补丁制作-直接编辑二进制程序【】.mp4
- [40.0 MB] 2-10为线程执行命令 【】.mp4
- [52.5 MB] 1-5内存查看与修改 【】.mp4
- [42.1 MB] 1-1LinuxCC++调试准备工作 【】.mp4
- [51.7 MB] 2-11线程日志信息控制 【】.mp4
- [35.6 MB] 1-9函数调用栈管理 【】.mp4
- [40.5 MB] 2-7C++跨平台多线程知识 【】.mp4
- [26.1 MB] 2-5查看对象类型 【】.mp4
- [35.9 MB] 4-5核心转储coredump基础 【】.mp4
- [51.2 MB] 1-3调试断点管理 【】.mp4
- [60.3 MB] 4-4多线程死锁调试 【】.mp4
- [55.1 MB] 3-1跳转执行-任意执行代码穿越到过去和未来 【】.mp4
- [30.8 MB] 1-2启动调试 【】.mp4
- [57.9 MB] 2-4gdb多窗口管理 【】.mp4
- [42.7 MB] 3-7制作调试发行版 【】.mp4
- [76.6 MB] 2-9线程查找线程断点 【】.mp4
- [69.1 MB] 4-2检测各种内存问题检查泄漏栈溢出野指针等【】.mp4
- [56.0 MB] 4-7无调试符号coredump分析 【】.mp4
- [52.6 MB] 3-3调试子进程 【】.mp4
- [67.5 MB] 4-8软件密码“破解” 【】.mp4
- [70.4 MB] 1-4变量查看与修改 【】.mp4
- [62.5 MB] 2-6多线程基础 【】.mp4
- [34.0 MB] 1-8源代码管理查看搜索2 【】.mp4
- [29.4 MB] 2-8多线程调试管理 【】.mp4
- [56.3 MB] 2-2捕获点使用 【】.mp4
- [45.2 MB] 2-12执行外部命令以及保存命令及输出【】.mp4
- [70.0 MB] 3-2反向执行-调试中的undo 【】.mp4
- [35.4 MB] 2-3为断点执行命令 【】.mp4
- [50.7 MB] 1-6寄存器查看与修改 【】.mp4
- [48.1 MB] 4-3远程调试 【】.mp4
- [48.5 MB] 4-1内存泄漏检测 【】.mp4
- [36.3 MB] 适合人群 Linux C++开发者 软件调试人员 编程爱好者 学习收获 掌握GDB调试技巧 解决复杂调试问题 提升代码质量 祝您学习愉快! 学有所成,前程似锦!





