scanf函数返回值为EOF的代码示例
时间: 2024-09-14 11:01:56 浏览: 45
C语言基础知识和代码示例.zip
`scanf`函数是C语言标准输入函数库中用于从标准输入(通常是键盘)读取格式化输入的一个函数。当`scanf`遇到文件结束标志(EOF)时,它会返回EOF值。在不同的操作系统中,EOF的定义可能有所不同,通常是-1。当你尝试从输入流中读取数据,但已经到达文件的末尾或者输入流结束时,`scanf`会返回EOF。
下面是一个简单的代码示例,它演示了如何使用`scanf`函数,并检查其返回值是否为EOF:
```c
#include <stdio.h>
int main() {
int num;
// 提示用户输入
printf("请输入一个整数,输入完成后请按Ctrl+Z(在Windows上)或Ctrl+D(在Unix/Linux上)结束输入:\n");
// 使用循环和scanf读取用户输入直到输入结束
while (scanf("%d", &num) != EOF) {
printf("你输入的数字是:%d\n", num);
}
// 当输入结束时,printf一条消息表示输入结束
printf("输入结束。\n");
return 0;
}
```
在这个示例中,程序会不断提示用户输入一个整数,直到用户输入结束。当用户结束输入时(通常是在Windows上按Ctrl+Z,或在Unix/Linux上按Ctrl+D),`scanf`会返回EOF,此时程序会打印一条消息表示输入结束,并退出循环。
阅读全文