如何使用LLDB进入最外层的函数调用
How to step-into outermost function call in the line with LLDB?
假设我正在调试这样的代码
outer(fn1(), fn2());
如果我使用 s
命令,LLDB 将首先步入fn1
,然后我键入 fin
步出,s
再次步入fn2
,fin
......直到现在我才能进入outer
这是我从一开始就想要的。
有没有办法告诉LLDB在哪个函数调用上单步执行?
lldb 附带了一个别名:sif
。在给定的示例中,您可以运行:
(lldb) sif outer
你可以记住它是step into function
它适用于部分匹配,不必使用完整的函数名称进行调用。在这种情况下,您也可以运行sif out
例如。
thread step-in --step-in-target outer
或更紧凑地说,s -t outer
将在进入outer
时停止。 有关文档,请参阅help s
。
直接否。但是,您可以在外部函数的定义中设置断点。
相关文章:
- 构造函数正在调用一个使用当前类类型的函数
- 使用共享指针的函数调用,其对象应为 const
- 将参数打包的参数传递到 std::queue 中,以便稍后使用不同的函数调用
- 使用动态链接加载程序 <dlfcn.h> 而不是直接函数调用的目的是什么?
- 使用 std::find 时没有匹配的函数调用错误
- 了解在返回值之前和之后使用 EAX 的函数调用
- 使用显式模板参数列表和 [temp.arg.explicit]/3 的函数调用的演绎失败
- 使用成员初始值设定项列表时没有匹配的函数调用错误
- 是否可以使用三元切换/控制/谓词成员函数调用?
- 使用回调函数从构造函数调用虚拟/派生方法的替代方法?
- 在函数调用中使用类型vector<pair<int,int>>::iterator&in
- 在函数调用之前使用(void)
- 在C++的函数调用中使用模板定义的变量
- 在函数调用中使用多个星号有什么用?
- 不能在函数调用中使用int后减量
- 存储一个函数的迭代结果,并在被另一个函数调用时使用它们
- 在一个函数调用中创建线程池,并从另一个函数调用来使用它
- void函数调用无法使用c++
- 在API函数调用中使用nullptr
- 没有匹配的函数调用,使用函数指针