- #include <stdio.h>
- int main(){
- char c;
- while ((c = getchar()) != EOF)
- putchar(c);
- return 0;
- }
复制代码
乍一看上面代码,貌似是没什么问题,但是...
getchar() 在Xcode中的定义为:int getchar(void); 描述为:get next character or word from input stream
也就是它返回的类型是int,所以当接收返回值的变量c 是char型时,则意味着c可能无法容纳下所有可能的字符,特别是可能无法容下EOF。
所以接收getchar返回值的变量要至少为int型的。 |
|