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キーを押さずに両方の文字を入力します。