GDB入门

reference:GDB使用详解

What is it?

gdb是Linux下常用的debugger,主要用于c/c++。我们可以在shell中输入gdb来查看它。
image

An Example

reference:Linux下C语言的调试

生成可执行文件供调试

// demo.c
#include <stdio.h>

int sum(int a, int b) {
    return a + b;
}

int main() {
    int a = 1;
    int b = 2;
    int c = sum(a, b);
    for(int i=0;i<c;i++)
        printf("Hello, World!");
}

在shell中执行命令(-g生成调试信息,这对于使用gdb是必要的)

gcc -o demo -g demo.c

启动gdb

gdb demo

image

查看源文件

l # list

image

添加断点并查看

b 4 # break line number
b main # function name
info b 

image

运行程序

此时会停在遇到的第一个断点处

r # run

image

单步调试

这里可以使用n(next)或者s(step),区别在于后者会进入函数调用中。
image

查看变量

p sum
p a
p a+b

image

继续执行

c # continue

详细内容

这篇博客已经很全面了。

posted @ 2022-10-31 17:52  Cisco_coco  阅读(62)  评论(0)    收藏  举报