GDB can do four main kinds of things (plus other things in support of these) to help you catch bugs in the act:
* Start your program, specifying anything that might affect its behavior.
* Make your program stop on specified conditions.
* Examine what happened when your program stopped.
* Change things in your program so you can experiment with correcting the effects of one bug and go on to learn about another.
You can use GDB to debug programs written in C or C++. This book is a printed version of the GDB documentation, available online from the Free Software Foundation.