如何重新定义gdb内置命令并调用原来的命令

发布于 2025-01-01 21:24:25 字数 186 浏览 1 评论 0原文

我在gdb中重新定义了一个内置命令,例如“run”,我想打印一条消息,然后调用原来的“run”命令来执行真正的函数。 如果我这样写:

define run
   print "running"
   run
end

gdb 将达到最大执行限制,因为它正在递归调用。我怎样才能避免这个问题?

I redefined a built-in command in gdb, for example "run", I want to do printing a message and then call the original "run" command to execute the real function.
If I write like this:

define run
   print "running"
   run
end

The gdb will reach the max execute limitation, because it is calling recursively. How can I avoid this problem?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

老娘不死你永远是小三 2025-01-08 21:24:25

使用 gdb 用户定义的命令挂钩。例如,这个钩子将在 run 命令之前打印消息:

define hook-run
print "running"
end

Use gdb User-defined Command Hooks. For example this hook will print message before run command:

define hook-run
print "running"
end
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文