What you'll learn:
- How to debug using a debugger like GDB
- How to detect memory leaks using valgrind
- How to log errors and get input from a running program.
- Learn additional debugging tools (sanitizers, tracing tools, and static analysis tools)
Overview
**Newly revamped in 2024 with twice the content, and higher quality videos!**
In this course you will learn how to use the popular debugger GDB to find errors in your C and C++code. Learning how to use a debugger will allow you to save time when finding errors and spend more time building better software. Being able to debug code is a necessary skill for all software developers to have, and you need nothing more than a terminal window to do so. The lessons learned from this course however will go behind the GDB debugger, and even show you a few other great tools like valgrind for finding bugs in your code.
Topics you'll learn
Students should take this course if they want to learn:
How to use the popular GDB debugger
General debugging techniques, and why certain bugs occur
Some more advanced topics like reverse-debugging writing scripts for debugging not covered in other basic courses.
Why you should take this course?
Learning how to use a debugger will at first challenge conventional 'printf' debugging strategies that you may be able to get away with. But as you build larger software and work on software with larger teams, it will become essential to learn how to find and fix bugs. With this course and some practice, you will be able to work more quickly and save time fixing bugs, and then can spend your other efforts building great software. I can recall several instances when Ifirst started working as a software engineer, and it took me weeks to find and fix a single bug. Had Ibetter debugging skills at the time, I could have saved myself (and the company) a lot more time (and myself pain!). So unlock your full debugging potential by taking this course!
Who am I?
Ihave been teaching for over 10 years in universities and as a professor. Ihave worked in industry in big companies, startups, and as a consultant. I am looking forward to being your instructor for this course, and Ihope you will get great value out of the lessons learned!