[问题]gdb 如何调试带参数的main函数?

内核编译和嵌入式产品的设计与开发
回复
ASDDASDK
帖子: 10
注册时间: 2008-03-22 18:34

[问题]gdb 如何调试带参数的main函数?

#1

帖子 ASDDASDK » 2008-04-03 16:58

比如, 如果我在mytest.c里面写了一个小程序,

// mytest.c

int main( int argc, char *argv[] )
{
do something here;

return 1;
}


然后使它通过了编译

> cc -g mytest.c -o mytest

gdb mytest 后

怎么传递main的参数?
参数个数,和字符串怎么传递?


如果 argc 是 4, argv[0] 是 "good morning\n"


我应该怎样让gdb 装载这个程序?

我试了

run 4 "good morning\n"

失败

我试了

run + 4 + "good morning\n"

失败

我试了

run + '4' + "good morning\n"
失败

我试了.........


反正怎么试也不对.


请高手把正确的输入方式告诉我, 谢谢!


在此谢过各位大侠了!
fengjl026
帖子: 77
注册时间: 2007-10-20 22:18

#2

帖子 fengjl026 » 2008-04-08 16:37

set args 可以指定
头像
yaoms
帖子: 4952
注册时间: 2007-10-19 14:51
来自: 深圳

#3

帖子 yaoms » 2008-04-08 16:42

代码: 全选

$gdb
(gdb) run app argv1 argv2
Nothing 有事请发邮件到 yms541 AT gmail.com
alias 爱慕颇雷尔='mplayer'
jerry200
帖子: 22
注册时间: 2010-10-04 16:14

Re: [问题]gdb 如何调试带参数的main函数?

#4

帖子 jerry200 » 2010-11-26 18:24

用了楼上的方法,怎么还是不行呢?
carter2005
帖子: 10
注册时间: 2008-04-28 13:01

Re: [问题]gdb 如何调试带参数的main函数?

#5

帖子 carter2005 » 2010-11-27 13:37

gdb --args mytest arg1 arg2 ... ...
回复