当前位置: 技术问答>linux和unix
使用gdb调试软件,如何进入所调用函数的内部(在另一个源文件内)
来源: 互联网 发布时间:2016-05-02
本文导语: 只会使用b,n.... | 用断点(breakpoint) break命令(可以简写为b)可以用来在调试的程序中设置断点,该命令有如下四种形式: (gdb) break line-number 使程序恰好在执行给定行之前停止。 (gdb) break f...
只会使用b,n....
|
用断点(breakpoint)
break命令(可以简写为b)可以用来在调试的程序中设置断点,该命令有如下四种形式:
(gdb) break line-number 使程序恰好在执行给定行之前停止。
(gdb) break function-name 使程序恰好在进入指定的函数之前停止。
(gdb) break line-or-function if condition 如果condition(条件)是真,程序到达指定行或函数时停止。
(gdb) break routine-name 在指定例程的入口处设置断点
如果该程序是由很多原文件构成的,你可以在各个原文件中设置断点,而不是在当前的原文件中设置断点,其方法如下:
(gdb) break filename:line-number
(gdb) break filename:function-name
要想设置一个条件断点,可以利用break if命令,如下所示:
(gdb) break line-or-function if expr
例:
(gdb) break 46 if testsize==100
从断点继续运行:countinue 命令
http://fanqiang.chinaunix.net/program/other/2006-07-14/4834.shtml
break命令(可以简写为b)可以用来在调试的程序中设置断点,该命令有如下四种形式:
(gdb) break line-number 使程序恰好在执行给定行之前停止。
(gdb) break function-name 使程序恰好在进入指定的函数之前停止。
(gdb) break line-or-function if condition 如果condition(条件)是真,程序到达指定行或函数时停止。
(gdb) break routine-name 在指定例程的入口处设置断点
如果该程序是由很多原文件构成的,你可以在各个原文件中设置断点,而不是在当前的原文件中设置断点,其方法如下:
(gdb) break filename:line-number
(gdb) break filename:function-name
要想设置一个条件断点,可以利用break if命令,如下所示:
(gdb) break line-or-function if expr
例:
(gdb) break 46 if testsize==100
从断点继续运行:countinue 命令
http://fanqiang.chinaunix.net/program/other/2006-07-14/4834.shtml
|
step就可以进去了吧
|
设置 br sourcefile:function name
运行程序后 会直达某一断点, 不想调这个 就按 c (continue)
进入想要的断点 按 n 单步慢慢的调吧
运行程序后 会直达某一断点, 不想调这个 就按 c (continue)
进入想要的断点 按 n 单步慢慢的调吧