您可能知道,在 GDB 中,step(s)您可以使用命令单步执行函数。但s首先检查并单步执行函数的参数。例如对于以下函数:
foo(bar(1));
Run Code Online (Sandbox Code Playgroud)
走进foo,走进bar,然后走进foo。一旦参数数量越来越多,进入参数就变得很烦人。是否可以foo使用 GDB 直接单步执行并跳过单步执行其参数?
我知道我可以设置一个断点foo:)我正在寻找其他解决方案。
Kam*_*Cuk -1
在处理一些复杂的调用时:
printf("%d %d\n", function(), next_function());
Run Code Online (Sandbox Code Playgroud)
我“转到”step那条线,然后单步si进入。它单步执行第一个调用的函数。然后您可以finish退出并si再次进入下一个功能。