int main()
{
int r, c;
r = getchar();
c = getchar();
putchar(r);
putchar(c);
printf("\n");
return(0);
}
読み込み後r、プログラムは出力rして終了します。私はそれを求めてc入力したいのですが、どうしてそれができないのですか?
同じ行に文字を入力しますか、それとも2行に入力しますか?
getchar()Enterキーを押すまで待機してから、文字の解析を開始します。2つの異なる行に2文字を入力した場合、最初の文字が読み取られ、次に\n文字が読み取られます。
つまり、次の入力です。
a
b
と同等"a\nb"です。
getchar()\nの代わりに取得しb、を出力しますa\n\n。
両方の文字を入力してから、Enterキーを押します。
Xおそらく+と入力していますEnter。1つ目getchar()は文字Xを読み取り、2つ目はgetchar()Enterキーを押したときに生成された改行を読み取ります。Enterキーを押さずに両方の文字を入力します。