Debugging C and C++: Master GDB, Valgrind, and Memory Safety

Learn to find, diagnose, and fix memory leaks and runtime errors in C and C++ using GDB, Valgrind, and modern sanitizers to write robust, production-ready code.

4.5 (345) ⏱ 1h 57m 📚 5 lessons

About this course

Relying on print statements to find bugs in your C and C++ programs is slow, exhausting, and often fails to uncover hidden memory leaks. To build robust, production-grade software, you need to master the professional tools and systematic techniques used to diagnose complex runtime errors. This written course guides you through the essential concepts of software debugging. You will transition from guessing where errors are to systematically identifying, analyzing, and fixing segmentation faults, memory leaks, and undefined behavior. What you'll learn: - Understand core debugging terminology, memory layouts, and why common C/C++ bugs occur. - Master GDB commands to inspect variables, set breakpoints, navigate call stacks, and perform reverse debugging. - Detect memory leaks and invalid memory accesses using Valgrind Memcheck. - Apply modern compiler instrumentation techniques like AddressSanitizer (ASan) to catch bugs at runtime. - Analyze core dumps to debug crashes that happen in production environments. - Write GDB scripts to automate repetitive debugging workflows and save time. You will start with foundational concepts of program execution and memory safety before moving step-by-step through practical debugging scenarios. Through written explanations and code analysis exercises, you will build a solid mental model of how programs fail and how to fix them. This course is designed for beginner-to-intermediate C and C++ developers who want to move beyond basic print-statement debugging. No prior experience with debugging tools is required. Equip yourself with the skills to write cleaner, safer, and more reliable C and C++ code.

What you'll get

  • 📜 Certificate of completion
    Add it to your LinkedIn profile
  • ♾️ Lifetime access
    Come back anytime, no expiry
  • 📱 Phone or computer
    Works anywhere, any device
  • 💸 30-day refund
    No questions asked
  • Short & focused
    1h 57m of practical content

Reviews (3)

Ricardo Pinto PT Verified learner
★ 4 · 2025-10-03T07:59:55+00:00

Good introduction to the topic. The structure was logical, and most of the examples were relevant, though I wished for more depth in certain areas.

Leo Evans GB
★ 4 · 2025-04-17T13:12:55+00:00

Good information presented here. The examples were helpful, but occasionally I wished for a bit more depth. Decent value for the price.

Róbert Jankovič SK Verified learner
★ 2 · 2024-12-23T08:50:55+00:00

Found it useful for a refresher. Not sure it would be the best starting point for a complete beginner, tbh.

Write a review

You'll be asked to sign in after sending — your draft is saved.

Learners also took

Frequently asked

What do I need to take this course? +

Just a phone or computer with internet. No installs, no special hardware.

How do I pay? +

By card via Stripe, or with cryptocurrency. We do not store card details — Stripe handles them securely.

Can I get a refund? +

Yes — full refund within 30 days, no questions asked.

How long will I have access? +

Forever. Once you purchase, the course is yours to revisit anytime.

Will I get a certificate? +

Yes. On completion you'll receive a certificate you can add to your LinkedIn profile.

Built for learners in
Tech Design Finance Marketing Healthcare Education Hospitality Manufacturing