如何以编程方式在C或C++代码中设置一个断点,以便在Linux上为GDB工作?
即:
int main(int argc, char** argv)
{
/* set breakpoint here! */
int a = 3;
a++; /* In gdb> print a; expect result to be 3 */
return 0;
}
发布于 2018-01-19 16:40:36
一种方法是发信号中断:
#include <csignal>
// Generate an interrupt
std::raise(SIGINT);
在C:
#include <signal.h>
raise(SIGINT);
更新:MSDN指出,Windows并不真正支持SIGINT
,所以如果可移植性是一个问题,你可能会更好使用SIGABRT
。
发布于 2018-01-19 17:58:57
在我工作的一个项目中,我们这样做:
raise(SIGABRT); /* To continue from here in GDB: "signal 0". */
https://stackoverflow.com/questions/-100007195
复制相似问题