GDB调试多文件方法

例程源码如下:

//add.h extern int add(int,int);

//add.c int add(int a, int b) {     int r = a + b;     return r; }

//mul.h extern int mul(int,int);

//mul.c int mul(int a, int b) {     int r = a * b;     return r; }

//main.c #include "add.h" #include "mul.h" #include <stdio.h> int main() {     int a,b;     int r;     scanf("%d %d",&a,&b);     r = add(a,b);     r = mul(a,b);     return 1; }

makefile如下:

cal: main.o add.o mul.o  gcc -g -o cal main.o add.o mul.o main.o:main.c add.h mul.h  gcc -g -c main.c add.o:add.c add.h  gcc -g -c add.c mul.o:mul.c mul.h  gcc -g -c mul.c 

调试步骤

1.gdb cal

2.list 可以看到main.c的代码

3.break 9 在r = add(a,b);处设置断点

4.run 运行后在停止与端点

5.s

6.list 可以看到add.c的代码,说明可以对add.c里面的函数调试了

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。