count = 0;
while ( (c = getchar()) != EOF)
{
if (c != '\t' && c != '\n') continue;
if (c == '\n') break;
if (c == '\t') count++;
}
代码均值是什么,getchar
和EOF
意味着我不明白
答案 0 :(得分:1)
getchar()
标准函数从标准输入流中读取字符。
返回值的类型为int
(比char
“更宽”),因为当输入读取失败时,它也可以返回EOF
,通常是因为流已关闭。代码中的标记EOF
只是标题中的常量,可以这样声明:
#ifndef EOF
# define EOF (-1)
#endif
所以它实际上只是整数文字-1
的别名(但我不认为你可以依赖数值,使用符号名称!)。
代码循环直到检测到EOF
,即它遍历其标准输入流上可读的所有字符,并计算找到\t
的次数。
它可以简化很多,第一个if
毫无意义(continue
当然是拼错的。)