gdb commands can be used to execute gdb commands after a breakpoint occurred.
Take this as example .
#include <stdio.h>
int func(int a, int b, int c) {
return a + b - c;
}
int main(int argc, char *argv[]){
int i = 0;
for (; i < 100; i++){
func(i, i++, 1);
}
return 0;
}
we want to break func when a > 10 and checkout variable c
(gdb) break func if a > 10
Breakpoint 1 at 0x80483f0: file test-me.c, line 4.
(gdb) commands
Type commands for breakpoint(s) 1, one per line.
End with a line saying just "end".
>print a
>end
(gdb) r
Starting program: /home/alloc/test/a.out
Breakpoint 1, func (a=11, b=10, c=1) at test-me.c:4
4 return a + b - c;
$1 = 11
(gdb) quit
本文介绍如何使用GDB调试工具,在特定条件下设置断点并查看变量状态。通过实例演示了如何在函数`func`中当参数`a`大于10时暂停执行,并观察变量`c`的值。
1万+

被折叠的 条评论
为什么被折叠?



