我有一个gdb用户定义的命令可以进行一些设置,然后可以完成一项简单的工作或复杂的工作。该命令遵循以下基本结构:
define mycmd
# Common setup
if ($argc == 0)
# Some simple thing a few lines long
## What goes here so I exit mycmd?
end
# A lot of lines doing a complex thing
end
是否有类似C的返回我可以代替##行立即终止mycmd? return,exit,quit,stop,loop_break命令不能达到我的预期效果。
答案 0 :(得分:2)
是否有类似C的回报
似乎没有。可能的解决方案是
define mycmd
... common setup
if (condition)
... do simple thing
else
mycmd_helper
end
end
define mycmd_helper
... do complex thing
end
答案 1 :(得分:1)
这不是它的主要用途,但你可以使用loop_break:
define mycmd
# Common setup
set $i=1
while $i == 1
set $i=0
if ($argc == 0)
# Some simple thing a few lines long
## What goes here so I exit mycmd?
loop_break
end
# A lot of lines doing a complex thing
end
end