Home > Article > Backend Development > How to use gdb to debug C++ programs?
gdb is a tool for debugging C++ programs. Basic commands include: run: start the program break: set a breakpoint next: execute the next line of code step: execute the current function step by step print: print the expression value bt: display the stack trace Advanced features include conditional breakpoints, watchpoints, and Python scripts.
How to use gdb to debug C++ programs
Introduction
GDB (GNU Debugging debugger) is a powerful tool for debugging C++ programs. It allows developers to step through code, inspect variable values, and view stack traces. This article explains how to use gdb in C++.
Installing GDB
In most Linux distributions, gdb comes pre-installed. If you don't have it installed, you can install it using the following command:
sudo apt install gdb
On macOS, you can install gdb using Homebrew:
brew install gdb
Start GDB
To start gdb, use the following command:
gdb
Then you need to specify the program you want to debug. You can load a C++ program by running the following command:
(gdb) file my_program.cpp
Basic GDB commands
Here are some basic gdb commands for debugging C++ programs:
Practical case
Suppose we have a C++ program named my_program.cpp
, which contains the following code:
#include <iostream> using namespace std; int main() { int a = 5; int b = 10; int c = a + b; cout << c << endl; return 0; }
To debug this program, we can perform the following steps:
gdb
command. file my_program.cpp
to load the program. run
command to run the program. break 10
to set a breakpoint to pause the program at line 10 (here is the cout
statement). next
command to step through the code until a breakpoint is reached. print
command to print the value of the variable, such as print a
or print c
. bt
command to view the stack trace. continue
command to continue executing the program. Advanced features
gdb also provides many advanced features, such as:
Conclusion
gdb is a powerful tool that can be used to debug C++ programs. By mastering basic commands and advanced features, developers can effectively find and fix errors in their code.
The above is the detailed content of How to use gdb to debug C++ programs?. For more information, please follow other related articles on the PHP Chinese website!