c++ - 当我在 GDB 中设置一个断点时,对于 c++ 文件,它到底在哪里中断?

标签 c++ debugging gdb

我想知道它到底会在哪里中断,以及在此事件之前和之后它会执行什么 2个案例:线路和功能

行大小写:

(gdb) break test.c:851

代码:

850 setup();
851 return configure();
852 

这会执行configure()吗?还是不是

功能案例:

(gdb) TestClass::initialize()

代码:

849 initialize(){
850 setup();
851 return configure();
852

它会执行setup()吗?

最佳答案

根据我的经验,一旦上一行的代码完成,gdb 就会中断。您可以通过从断点单步执行来验证这一点,您将观察到配置函数中的代码将被执行并且值将返回到第 851 行,此时 return 关键字将启动并返回那个值。

关于c++ - 当我在 GDB 中设置一个断点时,对于 c++ 文件,它到底在哪里中断?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15274543/

相关文章:

条件数据观察点在 ARM GDB 中不起作用

c++ - 使用相机旋转使四边形始终出现在相机前面(c++/opengl)

c++ - 允许非 const 在包装器模板中转换为 const

excel - 执行启动代码时VBA进入调试?

ubuntu - 使用 Eclipse CDT gui wrapper for gdb 分析转储

gdb - clang 3.1 在 Ubuntu 12.04 上构建的二进制文件无法使用 gdb 进行调试

c++ - 如何在 XCode 中使用 C++ 和 Objective-C

c++ - 如何使用 Boost 解析超过 2 级的 ini 文件

c++ - 未处理的异常 : _com_error at memory location 0x0040f4ac

删除数组时检测到 C++ 堆损坏