scanfたとえば、私がキーボードから文字を読んでいたとしましょう。その後、printf読んだばかりの文字を印刷するために使用します。
scanf("%c",&ch);
printf("%c",ch);
scanfが文字を読み取っているときに、Enter キーを押して続行し、 を実行する必要がありprintfますよね?
ABCDそして、キーボードで入力するとしましょう。その後、printf印刷されますA。
しかし、私がこれを行うとき:
do {
scanf("%c",&ch);
printf("%c",ch);
} while (ch!='\n');
ABCDキーボードで入力すると、printf印刷する必要があると思いますA。そして、それはループを続けるのでAはない\nでしょうか?
しかし、これの代わりに印刷されますABCD。なぜこれが起こるのですか?