Dev C++ で次のコードをコンパイルして実行すると、
#include <stdio.h>
main()
{
printf("Hello world!");
}
出力が点滅するだけです。を追加するgetch
と残ります。
#include <stdio.h>
main()
{
printf("Hello world!");
getch();
}
なぜそれが起こるのですか?
getch()
プログラムが終了する前にユーザー入力を待機します。Win32 コンソール アプリケーションの厄介な点は、プログラムが終了するとすぐにコンソールが閉じてしまうことです (そのため、単に点滅するだけです)。
これは、Win9x での古い DOS プログラムには当てはまりません (DOS ショートカット プロパティでチェックボックスが選択されていない限り、コンソールはデフォルトで開いたままになります)。
コマンド プロンプトでプログラムの両方のバージョンを実行すると、2 番目のバージョンは、キーを押した後にのみプロンプトに戻ることがわかります。