c语言中while((c=getchar())!=EOF)怎样才能输入EOF是循环中断

来源:百度知道 编辑:UC知道 时间:2024/06/10 07:15:27
我看到很多c语言例子里有类似代码,就是不知道怎么输入退出循环
可是程序完整源代码没有定义啊!

windows中的命令行程序是按Ctrl+Z,然后回车输入EOF
Unix/Linux中是按Ctrl+D

“压住Shift键,同时压一下z键,再回车……”
以上是我2015-09-19 16:45的回答,遭人投诉了。这里的答案没有一个说要在Ctrl+Z后加回车的话,你试试吧,不加回车行不行?不知有什么资格来投诉,莫名其妙……

EOF的值是-1
是指的文件结束标记,所以这个是一个文件中常用的。

想结束 可以自己定义一个符号

#include "stdio.h"
main()
{
char c;
while((c=getchar())!='#') //自己定义一个结束符号 例如#号 而不是EOF就行
{
printf("%c",c);
}

printf("\n结束了 !!\n");
getchar();
getchar();
}

EOF是文件结尾,代表的是-1,如果通过输入让他退出的话要按CTRL+z键,ctrl+z代表着-1既EOF
如果文件读取的话,文件结尾就是EOF,所以文件读取可以通过是不是EOF来判断是不是结尾

这个是文件结束标记,无法输入进来。