1

重複の可能性:
fflush(stdin) の使用

私のコードは次のとおりです。

scanf("%d", &_choice);
fflush(stdin);
gets(input);

の後に残った文字fflush(stdin);を削除するために使用します。'\n'scanf

しかし、それが機能しないことがわかり、gets自動的に'\n'文字を取得して続行します。

getchar()の代わりに使用して解決しましたfflushが、なぜ機能しなかったのかまだわかりませんfflush...

編集:fflushは出力ストリーム専用であることを理解しています。stdinしかし、ジャンクから「クリーニング」するためのコマンドはありますか?

4

1 に答える 1

4

fflushは出力ストリーム用です。

なにせ、fflush「キャラ消し」用ではない\n…。

于 2013-01-13T00:00:18.963 に答える