Мне нравится заставлять 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.