break foo if x>0
commands
silent
printf \"x is %d\\n\",x
cont
end
断点命令列表的一个应用是在遇到一个buf之后改正数据然后继续调试的过程。
使用命令来修改含有错误值的变量,然后使用\"continue\"命令继续程序的运行。
使用\"silent\"命令屏蔽输出:
break 403
commands
silent
set x = y + 4
cont
end
断点菜单
==============
一些编程语言(比如象C++)允许一个函数名被多次使用(重载),以方便应用的使用。
当一个函数名被重载时,\"break FUNCITON\"命令向GDB提供的信息不够GDB了解你要设置
断点的确切位置。如果你了解到这个问题,你可以使用\"break FUNCITONS(TYPES)\"命令
来指定断点的确切位置。否则GDB会提供一个函数的选择的菜单供你选择。使用提示符
\">\"来等待你的输入。开始的两个选择一般是\"[0] cancel\"和\"[1] all\"输入1则在所有
同名函数上加入断点。输入0则退出选择。
下例为企图在重载的函数符号\"String::after\"上设置断点。
(gdb) b String::after
[0] cancel
[1] all
[2] file:String.cc; line number:867
[3] file:String.cc; line number:860
[4] file:String.cc; line number:875
[5] file:String.cc; line number:853
[6] file:String.cc; line number:846
[7] file:String.cc; line number:735
> 2 4 6
Breakpoint 1 at 0xb26c: file String.cc, line 867.
Breakpoint 2 at 0xb344: file String.cc, line 875.
Breakpoint 3 at 0xafcc: file String.cc, line 846.
Multiple breakpoints were set.
Use the \"delete\" command to delete unwanted
breakpoints.
(gdb)