C 如何检查下一个输入是否为空?
我正试图重定向一个文件作为stdin输入的一个要求。我不知道如何检查下一个输入是否为空或是否已完成 像这样的C 如何检查下一个输入是否为空?,c,input,io,stream,C,Input,Io,Stream,我正试图重定向一个文件作为stdin输入的一个要求。我不知道如何检查下一个输入是否为空或是否已完成 像这样的 ./a.out program < file.txt abc abcd abcde abcdef 给定的文件如下所示 ./a.out program < file.txt abc abcd abcde abcdef 如果执行以下操作,则仅当scanf无法读取任何其他内容时,它才会停止 while( scanf("%s", string) != EOF ){ p
./a.out program < file.txt
abc
abcd
abcde
abcdef
给定的文件如下所示
./a.out program < file.txt
abc
abcd
abcde
abcdef
如果执行以下操作,则仅当scanf无法读取任何其他内容时,它才会停止
while( scanf("%s", string) != EOF ){
printf("%s", string);
}
通过扫描字符串的方式,我们无法使用它,因为它已经是一个指针。如果执行以下操作,它只会在scanf无法读取任何其他内容时停止
while( scanf("%s", string) != EOF ){
printf("%s", string);
}
通过扫描字符串的方式,我们无法使用&因为它已经是指针。您可以调用stdin:
您可以访问stdin:
我也这样编码。scanf的手册页提示:如果在任何转换(如文件结束)之前发生输入失败,则返回值EOF。非常感谢,这就成功了。我无法访问终端上的手册页,因为我的学校在考试时屏蔽了它,但还没有解除屏蔽。我也这样编码。scanf的手册页提示:如果在任何转换(如文件结束)之前发生输入失败,则返回值EOF。非常感谢,这就成功了。我无法访问我的终端上的手册页,因为我的学校为了考试屏蔽了它,但还没有解锁。非常感谢,我尝试了上面的和这个。他们两个都工作。@user1993422不客气!如果你的问题解决了,考虑接受一个解决方案来表明你没有积极寻找一个改进的解决方案,并在堆栈溢出上获得一个新徽章。他们两个都工作。@user1993422不客气!如果您的问题得到解决,请考虑接受其中一个解决方案,以表明您没有积极寻找改进的解决方案,并在堆栈溢出上获得新徽章。