2
私のコードは文字配列はcで5ではなく3つの入力を読み込みますか?
#include <stdio.h>
#include <ctype.h>
#define size 5
void main(){
int i;
char letter[size];
for(i=0;i<size;i++)
letter[i]=getchar();
for(i=0;i<size;i++)
putchar(toupper(letter[i]));
}
の下に与えられ、出力は次のようになります。
[email protected]:~$ gcc test.c
[email protected]:~$ ./a.out
a
s
d
A
S
D
ですが、なぜでしょうか? 5文字を読み上げて大文字に変換することでした。
貧しい無視された ''\ n'' ... – EOF
端末がどのように動作するかを少しずつ読んでおく必要があります。 [this](http://stackoverflow.com/questions/421860/capture-characters-from-standard-input-without-waiting-for-enter-to-be-pressed) – JJF
@EOFは確かに正しいです。あなたのコメントを答えに広げました。 –