关于gdb下list命令的问题

修电视的攻城狮 2010-11-30 10:01:10
我在gdb环境下用list命令查看源文件,但是源文件却不是从第一行开始显示,每次都是从包含main函数那里开始显示,假如main函数在第101行,那么前面的100行就看不到了,请问下,这种情况是不是list命令后需要加什么参数?
...全文
178 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
luciferisnotsatan 2010-11-30
  • 打赏
  • 举报
回复
list <linenum>
显示程序第 linenum 行的周围的源程序。

list <function>
显示函数名为 function 的函数的源程序。

list
显示当前行后面的源程序。

list -
显示当前行前面的源程序。

一般是打印当前行的上 5 行和下 5 行,如果显示函数是是上 2 行下 8 行,默认是 10 行,当然,你也可以定制显示的范围,使用下面命令可以设置一次显示源程序的行数。

set listsize <count>
设置一次显示源代码的行数。

show listsize
查看当前 listsize 的设置。


list 命令还有下面的用法:

list <first>, <last>
显示从 first 行到 last 行之间的源代码。

list , <last>
显示从当前行到 last 行之间的源代码。

list +
往后显示源代码。


一般来说在 list 后面可以跟以下这些的参数:

<linenum> 行号。
<+offset> 当前行号的正偏移量。
<-offset> 当前行号的负偏移量。
<filename:linenum> 哪个文件的哪一行。
<function> 函数名。
<filename:function> 哪个文件中的哪个函数。
<*address> 程序运行时的语句在内存中的地址。

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧