簡體   English   中英

gdb:退出程序而不退出gdb

[英]gdb: exit program without exiting gdb

我正在使用gdb調試程序。 首先,我load我的可執行文件,然后continue運行該程序。 我有時想要中斷我的程序的執行,所以我做Ctrl + C

我的問題是這關閉我的程序和gdb。 如何在不退出gdb的情況下退出程序?

你有沒有試過在gdb里面使用kill

使用ctrl-c中斷應用程序。 然后從GDB提示符運行“signal SIGINT”,它會將此信號發送到您的應用程序,使其執行與從命令行執行ctrl-c時通常所做的相同的操作。

看起來在Windows下,你必須使用Ctrl-Break而不是Ctrl-C 看到這個頁面

摘抄:

調用SetConsoleMode以關閉“Ctrl-C”鍵擊特殊含義的MS-Windows程序不能通過鍵入Cc來中斷。 因此,MS-Windows上的gdb支持C-作為備用中斷鍵序列,即使它忽略了Cc,也可用於中斷調試對象。

首先運行程序(不是從gdb內部),然后找到它的pid。

在另一個shell中,運行gdb --pid=<your program's pid> 這會將gdb附加到正在運行的程序中。 它會停止程序的執行,因此問題c繼續。

現在退出你的程序,你的gdb會話將保持在那里。

就像Manlio說的那樣,在這種情況下你想要的是kill ,它會提示你一條消息:

Kill the program being debugged? (y or n)

如果鍵入help running您將看到執行常見操作時需要了解的所有重要命令,例如停止執行當前程序。 這些應該是您正在運行的程序的所有命令,而不是gdb。

貝殼

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM