ユーザーからの入力を期待する、単純でインタラクティブなプログラムを作成しました。特定の入力を読み取った後、特定のアクションを実行しますが、最初にストリームから残りの文字を読み取って、ユーザーが入力したコマンドが多すぎないかどうかを確認します。
私の問題は、ストリームに文字が残っていない場合、ユーザーがEnterキーを押すまでスタックします。これをオーバーライドする方法はありますか?
これは、入力ストリームに残っている文字をチェックする関数です。
int check_end_of_stream(void){
char c;
c=getchar();
for(; c!='\n' && c!=EOF; c=getchar())
if(c!=' ' || c!=','){
printf("You have written too many statements");
printf(" in your command line!\n");
return 0;
}
return 1;
}
前もって感謝します!
PS私はLinuxでプログラミングしています