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