1.有时候,我们需要断点在循环的某个条件处时,比如以下代码:
#include <stdio.h>
int main(int argc,char *argv[])
{
int i=0;
for ( ; i<100;i++)
{
int m;
m = i;
}
return 0;
}
2.开始编译
#cc -g main.c
将生成a.out
3.开始断点
#gdb a.out
l #l命令用于查看代码
4.通过以上命令可以看到代码 m = i 处为标记为"11",那么,如何当i=50的时候,断点到 m = i处呢?
(gdb) b 11 if i==50
(gdb) r
Starting program: /home/bluesky/a.out
Breakpoint 1, main (argc=1, argv=0xbffff3b4) at main.c:11
11 m = i;
(gdb) p i
$1 = 50