我知道getchar(
)只是一个函数获取用户输入的行的第一个字符,然后是下一个等等
如果我们在一行中输入getchar()
,那么在代码完成时,让程序等待用户键入任何内容,并在显示信息时不关闭控制台。
为什么我们使用这行代码?
的而(的getchar()= '\ n'!); 的
我知道它会读取该行的所有字符,直到找到行尾,然后循环断开..正确。?但是,为什么这有用呢?如果我们不编写这行代码怎么办?
while((ch=fgetc(stream))!=EOF)
{
putchar(ch);
cha++;
if(ch=='\n')
{
lines++;
printf("Line %i is detected\n\n",lines);
if(lines==NEW_LINE)
{
lines=0;
while (getchar!='\n'); **//Here is my question**
}
}
}
答案 0 :(得分:2)
看起来这段代码是分页输出。
它一次从流中读取一个字符,并使用putchar
将其输出到stdout
。然后,如果该字符是换行符,则会增加行数。如果该计数达到某个已定义的常量STOP_LINE
,则重置计数并
while(getchar()!='\n');
等待用户按Return键。然后循环继续。
答案 1 :(得分:0)
while(getchar()!='\n');
读取行的所有字符,直到找到行尾。
然而,有更有效的方法可以做到这一点(比如使用缓冲流,或者尽可能读取更大的块)