BBS水木清华站∶精华区
发信人: bro (阿飞*桃谷小仙:PP), 信区: Unix
标 题: GDB(5)
发信站: BBS 水木清华站 (Mon Oct 12 09:52:49 1998)
发信人: captain (万里长征第一步) on board 'unix'
标 题: GDB (5)(转寄)
发信站: 国家智能机中心曙光站 (Fri Aug 21 04:57:45 1998)
发信人: lhh@argo (倚天), 信区: UNIX
标 题: GDB (5)(转寄)
发信站: Yat-sen Channel BBS (Thu Jul 30 11:56:13 1998)
转信站: argo
输入命令的技巧
==================
前面已经提到过TAB键的使用。使用TAB键能让你方便的得到所要的命令。比如
在gdb中:
(gdb)info bre <TAB>(键入info bre,后按TAB键)
gdb能为你完成剩下的输入。它还能萎蔫提供选择的可能性。如果有两个以上可
能的话,第一次按<TAB>键,gdb会响铃提示,第二次则显示可能的选择。同样gdb
也可以为一些子命令提供快速的访问。用法与上相同。
上例中显示
(gdb)info breakepoints
你也可以直接打回车,gdb就将你输入的作为命令的可能的缩写。来判断执行。
如果你打入的缩写不足以判断,那么gdb会显示一个列表,列出可能的命令。同样的
情况对于命令的参数。在显示完后gdb把你的输入拷贝到当前行以便让你继续输入。
如果你只想看看命令的列表或选项,你可以在命令行下打M-?(就是按着ESC键
同时按SHIFT和?键)。你可以直接在命令行下打试试。
(gdb)<M-?>
gdb会响铃并显示所有的命令。不过这种方式好象在远程调试是不行。当有的命令
使用一个字符串时,你可以用" ' "将其括起来。这种方法在调试C++程序时特别有用。
因为C++支持函数的重载。当你要在某个有重载函数上设断点时,不得不给出函数参数
以区分不同的重载函数。这时你就应该把整个函数用" ' "括起来。比如,你要在一个
叫name的函数上设断点,而这个函数被重载了(name(int)和name(float))。你将不得
不给出参变量以区分不同的函数。使用'name(int)'和'name(float)'。这里有个技巧,
你可以在函数名前加一个" ' "符号。然后打M-?.
--
;36m※ 修改:.NewFile 于 Aug 21 12:58:42 修改本文.[FROM: 159.226.41.148]m
m;33m※ 来源:.Yat-sen Channel argo.zsu.edu.cn.[FROM: www.ee.zsu.edu.c]m
--
m;34m※ 转寄:.Yat-sen Channel argo.zsu.edu.cn.[FROM: 159.226.41.148]m
--
m※ 来源:.国家智能中心曙光站 bbs.ncic.ac.cn.[IP: 159.226.43.21] m
--
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 166.111.78.167]
BBS水木清华站∶精华区