これは、cgdb でデバッグしようとしている非常に単純なプログラムです。問題は、「scanf」行に到達すると入力を求めるプロンプトが表示されることですが、入力後に Enter キーを押すと (下の例では 2)、無限ループに入るようです。ただし、gdbでは正常に動作します。
#include <cstdio>
using namespace std;
int main()
{
int n;
scanf("%d", &n);
printf("%d\n", n);
return 0;
}
ターミナルでの実行トレースは次のとおりです。
「apropos word」と入力して、「単語」に関連するコマンドを検索します... テストからシンボルを読み取り中...完了。
(gdb) 開始
0x400585 の一時的なブレークポイント 1: ファイル test.cpp、7 行目。 プログラムの開始: /home/Alex/Desktop/test
test.cpp:7 の一時的なブレークポイント 1、main ()
(gdb) 次へ
2 (これは私の入力です)
ここから無限ループが始まります。