Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/142.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 当我在GDB中设置断点时,对于c++;文件,它到底在哪里断开?_C++_Debugging_Gdb - Fatal编程技术网

C++ 当我在GDB中设置断点时,对于c++;文件,它到底在哪里断开?

C++ 当我在GDB中设置断点时,对于c++;文件,它到底在哪里断开?,c++,debugging,gdb,C++,Debugging,Gdb,我想知道它到底会在什么地方断裂,以及在这次事件之前和之后会执行什么 2例:线路和功能 行案例: (gdb) break test.c:851 代码: 这会执行configure()吗?还是不 功能案例: (gdb) TestClass::initialize() 代码: 它会执行setup()吗?根据我的经验,上一行的代码一旦完成,gdb就会中断。您可以通过从断点开始单步执行来验证这一点,您将看到configure函数中的代码将被执行,值将返回到第851行,此时return关键字将启动并返回

我想知道它到底会在什么地方断裂,以及在这次事件之前和之后会执行什么 2例:线路和功能

行案例:

(gdb) break test.c:851
代码:

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

功能案例:

(gdb) TestClass::initialize()
代码:


它会执行setup()吗?

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

根据我的经验,上一行的代码完成后,gdb将中断。您可以通过从断点单步执行来验证这一点,您将看到configure函数中的代码将被执行,并且值将返回到第851行,此时
return
关键字将启动并返回该值。

通常,在编译以进行调试时,断点在源行的第一条指令之前停止。但是,当代码经过优化时,内联和指令重新排列可能会导致错误。当然,在汇编指令上设置断点


通常,它不会执行您的行或函数的第一行。但你应该知道,在某些情况下,情况可能并非如此。请注意,gdb取决于提供给它的信息,因此结果可能因语言/编译器而异。

通常,在编译用于调试的源代码行的第一条指令之前,断点会停止。但是,当代码经过优化时,内联和指令重新排列可能会导致错误。当然,在汇编指令上设置断点


通常,它不会执行您的行或函数的第一行。但你应该知道,在某些情况下,情况可能并非如此。请注意,gdb取决于提供给它的信息,因此结果可能因语言/编译器而异。

调试器在断点中命名代码的第一条机器指令之前停止程序。调试器在断点中命名代码的第一条机器指令之前停止程序。行大小写,不确定函数的具体情况行的具体情况,不确定函数的具体情况
(gdb) TestClass::initialize()
849 initialize(){
850 setup();
851 return configure();
852