BBS水木清华站∶精华区

发信人: TJB (老六), 信区: Linux 
标  题: GDB (8) Part Four 
发信站: BBS 水木调试站 (Wed Jun  3 08:47:39 1998) 
 
发信人: System_[email protected] (大家一起来发呆), 信区: Linux 
标  题: gdb(八) 
发信站: 中国科大BBS站 (Tue Apr 14 13:35:40 1998) 
转信站: SwordHouse!linux.ustc.edu.cn!ustcnews!ustcbbs 
 
删除断点 
=================== 
   很自然当一个断点或是一个观察点完成了它的使命后,你需要把它从程序中删去。 
不然你的程序还会在相同的地方停主,给你造成干扰。使用'clear'命令来从程序中删去 
一个断点。 
   使用'clear'命令你可以删除指定位置的断点。使用'delete'命令你可以使用断点号 
来指定要删去的断点或观察点。 
   在删除断点时不需要先运行过它,GDB会忽略你刚才删去的断点。所以你可以继续运行 
你的程序而不必管断点。 
 
`clear' 
     在当前选择的栈帧上清除下一个所要执行到的断点(指令级)。当你当前选择帧是栈中 
最内层时使用这个命令可以很方便的删去刚才程序停止处的断点。 
 
`clear FUNCTION' 
`clear FILENAME:FUNCTION' 
     删除名为FUNCITON的函数上的断点。 
 
`clear LINENUM' 
`clear FILENAME:LINENUM' 
     删除以LINENUM为行号上的断点。 
 
`delete [breakpoints] [BNUMS...]' 
     删除参数所指定的断点,如果没有指定参数则删去程序中所有的断点。这个命令可以 
缩写成为'd' 
 
使断点暂时不起作用。 
======================== 
   如果你只是想让断点一时失去作用以方便调试的话,你可以先使断点不起作用。 
当你以后又想使用时可以用'enable'命令激活它们。 
   你使用'enable'命令来激活断点或是观察点,使用'disable'命令来使断点或观察点 
不起作用。使用'info break'或'info watch'来查看那些断点是活跃的。 
   断点或观察点有四种状态: 
   * 使能。当程序运行到断点处时,程序停止。使用'break'命令设置的断点一开始缺省 
是使能的。 
   *不使能。断点对你程序的运行没有什么影响。 
   *使能一次后变为不使能。断点对你的程序运行只有一次影响,然后就自动变成不使能 
状态。使用'tbreak'设置的断点一开始缺省是这个状态。 
   * 使能一次自动删除。断点在起了一次作用后自动被删除。 
   你可以使用以下的命令来使能或使不能一个断点或观察点。 
 
`disable [breakpoints] [BNUMS...]' 
     使由参数指定的断点或观察点变为不使能,如果没有参数的话缺省使所有断点和观察 
点变为不使能。当一个断点或观察点被不使能后在被不使能前的状态被记录下来,在断点或 
观察点再次被激活时,原来的状态得到继续。比如一个条件断点或一个设置了 
'ignore-counts'的断点在被使不能后记录活跃时断点被执行的次数,在不使能状态下,断 
点的执行次数(ignore-counts)不增加,直到断点再次被激活时,再继续计算条件 
(ignore-counts)。你可以使用'disable'命令的缩写'dis' 
 
`enable [breakpoints] [BNUMS...]' 
     使能由参数指定的断点或全部断点。 
 
`enable [breakpoints] once BNUMS...' 
     功能同上条命令,只是这条命令使断点只使能一次。 
 
`enable [breakpoints] delete BNUMS...' 
     功能同上条命令,只是这条命令使被使能的断点起作用一次然后自动被删除。 
     除了使用'tbreak'命令所设置的断点以外,断点被设置时都是使能的。 
 
-- 
※ 来源: 中国科大BBS站 [bbs.ustc.edu.cn] 
                                按任何键继续 .. 
 
-- 
※ 来源:·BBS 水木调试站 Leeward.lib.tsinghua.edu.cn·[FROM: 202.200.37.100] 

BBS水木清华站∶精华区