0

我正在尝试使用 GDB 的程序,我做了一个“break x”,然后逐步运行。所以当我想退出时,我会说“退出”,它会返回一个“劣质进程将被杀死警告消息”。如果我做'Y'会发生什么。因为我想以某种方式摆脱这个过程。如果我附加一个正在运行的进程并退出会发生什么。会分离还是退出正在运行的进程?不同的来源给出不同的想法。请指教。

另外,当我尝试运行它说的程序时,我正在运行彼得教程中的标准程序。当我执行第 16 行的步骤时,它会出现此错误。

 _IO_puts (str=0x40075e "In display():") at ioputs.c:35
 35 ioputs.c: No such file or directory.
     in ioputs.c

程序

  14 void display(int z, int *zptr) {
  15        printf("In display():\n");
  **16       printf("   z is %d and is stored at %p.\n", z, &z);**
  17       printf("   zptr points to %p which holds %d.\n", zptr, *zptr);
  18   }
4

1 回答 1

1

如果在调试器中运行进程并退出调试器,正在运行的程序将被终止(就像使用 SIGKILL 一样)。要正常结束程序,说continue(可能有很多忽略)直到程序完成。

如果您调试器附加到正在运行的程序并退出调试器,则调试器将分离并且程序继续运行,除非您事先将其终止。

于 2012-04-14T23:50:51.463 回答