1.有時(shí)候,我們需要斷點(diǎn)在循環(huán)的某個(gè)條件處時(shí),比如以下代碼:
#include <stdio.h>
int main(int argc,char *argv[])
{
int i=0;
for ( ; i<100;i++)
{
int m;
m = i;
}
return 0;
}
2.開(kāi)始編譯
#cc -g main.c
將生成a.out
3.開(kāi)始斷點(diǎn)
#gdb a.out
l #l命令用于查看代碼
4.通過(guò)以上命令可以看到代碼 m = i 處為標(biāo)記為"11",那么,如何當(dāng)i=50的時(shí)候,斷點(diǎn)到 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