EOF是end of file的缩写,表示"文字流"(stream)的结尾。
这里的"文字流",可以是文件(file),也可以是标准输入(stdin)。
EOF不是特殊字符,而是一个定义在头文件stdio.h的常量,
一般等于-1:#define EOF (-1)。除了表示文件结尾,
EOF还可以表示标准输入的结尾。
但是,标准输入与文件不一样,无法事先知道输入的长度,
必须手动输入一个字符,表示到达EOF。
这里的"文字流",可以是文件(file),也可以是标准输入(stdin)。
EOF不是特殊字符,而是一个定义在头文件stdio.h的常量,
一般等于-1:#define EOF (-1)。除了表示文件结尾,
EOF还可以表示标准输入的结尾。
但是,标准输入与文件不一样,无法事先知道输入的长度,
必须手动输入一个字符,表示到达EOF。
例1
#include<stdio.h>
int main()
{
int a,b;
while(scanf("%d %d",&a,&b)!=EOF)
{
printf("%d\n",a+b);
}
return 0;
}
//表示输入多组数据,每组两个,
//输出每组数据两数之和
int main()
{
int a,b;
while(scanf("%d %d",&a,&b)!=EOF)
{
printf("%d\n",a+b);
}
return 0;
}
//表示输入多组数据,每组两个,
//输出每组数据两数之和
例2
#include <stdio.h>
int main()
{
int c;
c = getchar();
while (c != EOF)
{
putchar(c);
c = getchar();
}
return 0;
}
int main()
{
int c;
c = getchar();
while (c != EOF)
{
putchar(c);
c = getchar();
}
return 0;
}