TC2.0 问题

来源:百度知道 编辑:UC知道 时间:2024/05/29 03:17:12
#include <stdio.h>

int main(void)
{
char c,pc;
pc=EOF;
while((c=getchar())!=EOF)
{
if((c==' ')&&(pc==' '))
{
}
else
{
putchar(c);
}
pc=c;
}
/*getchar();*/
return 0;
}

合并空格程序,用TC 2.0 编译后运行完后为何会留下一个文件结束符??
程序无问题!!!!
问的是为什么最后的文件结束符没有处理????

这里有问题啊,基本上是死循环
while((c=getchar())!=EOF)

getchar()函数需要按回车才能返回
循环依次读取输入缓冲区的内容

while((c=getchar())!='\n')
这样回车就能结束循环