ユーザーが「exit」という単語を入力したときに、ループから抜け出そうとしています。ユーザーがexitという単語以外のものを入力した場合は、プログラムで1行をスキップして、単一の「$」を記述します。それは動作しますが、少しおかしい演技をしています。コードと出力は次のとおりです。
int main()
{
char input[5];
int x = 5;
while(x){
printf("\n$");
fgets(input, sizeof input, stdin);
x = strcmp(input, "exit");
}
}
ここに出力があります(私の入力では: "a" return "asdfasdfasdf" return "exit" return):
$a
$asdfasdfasdf
$
$
$
$exit
Process returned 0 (0X0) execution time : 110.855s
Press ENTER to continue.
だから私の質問は:なぜそんなに多くの余分な「$」があるのですか?返品ごとに1つの「$」のみを取得するにはどうすればよいですか?