Мені подобається змушувати GDB встановлювати точку розриву, коли змінна дорівнює деякому значенню, яке я встановив, я спробував цей приклад:
#include <stdio.h>
main()
{
int i = 0;
for(i=0;i<7;++i)
printf("%d\n", i);
return 0;
}
Вихід з GDB:
(gdb) break if ((int)i == 5)
No default breakpoint address now.
(gdb) run
Starting program: /home/SIFE/run
0
1
2
3
4
5
6
Program exited normally.
(gdb)
Як бачите, GDB не зробив жодної точки розриву, чи можливо це з GDB?
(gdb) watch i No symbol "i" in current context.