C & C++ FAQ
|
C | C++ | getcharの返却型は、なぜchar型ではなくint型なのですか。 |
まずwhile文の( )の中の式#include <stdio.h> int main(void) { int ch; while ((ch = getchar()) != EOF) putchar(ch); return (0); }
に着目しましょう。まず、getcharによって読み込まれた文字がchに代入されます。C言語の代入式は、代入後の左オペランドの型と値をもつため、網掛け部はchと同じ値になります。(ch = getcahr()) != EOF