C语言如何判断stdin内是否有数据?
在C语言中,可以使用feof()函数来判断stdin内是否有数据。feof()函数用于检查文件结束标志,当文件结束时返回非零值,否则返回0。由于stdin是一个标准输入流,可以使用feof(stdin)来判断stdin内是否有数据。
示例代码如下所示:
#include <stdio.h>
int main() {
int c;
// 读取stdin内的数据,直到遇到文件结束标志
while ((c = getchar()) != EOF) {
// 处理读取到的数据
}
// 判断stdin内是否有数据
if (feof(stdin)) {
printf("stdin内没有数据\n");
} else {
printf("stdin内有数据\n");
}
return 0;
}
在上述代码中,使用getchar()函数从stdin中逐个读取字符,直到遇到文件结束标志EOF。然后使用feof(stdin)判断stdin内是否有数据,并输出相应的提示信息
原文地址: https://www.cveoy.top/t/topic/h8fn 著作权归作者所有。请勿转载和采集!