我目前正在阅读K&R的书,并打字输入第一部分中的示例,其中有一些示例类似于这样:
while((c = getchar()) != EOF) {
//do something
}
我正在Windows上测试这些示例,因此从cmd
提示符中运行已编译的exe文件。
要测试上面的示例,我如何模拟EOF
? 也就是说,当从命令提示符测试示例时,如何使循环停止?
我目前正在阅读K&R的书,并打字输入第一部分中的示例,其中有一些示例类似于这样:
while((c = getchar()) != EOF) {
//do something
}
我正在Windows上测试这些示例,因此从cmd
提示符中运行已编译的exe文件。
要测试上面的示例,我如何模拟EOF
? 也就是说,当从命令提示符测试示例时,如何使循环停止?
输入EOF,请使用以下方法:
首先,按下:Ctrl^X,然后按下:Ctrl^D
。您也可以通过将 int 变量的值显式设置为 -1 来模拟 EOF。
请查看以下代码以获得更清晰的理解:
#include<stdio.h>
int main() {
// char ch=getchar()
// int ch=-1;
if(ch==EOF) { printf("\nEOF: %d",EOF); }
if((ch!=EOF)==0) { printf("\nit is equal to 0"); }
if((ch!=EOF)==1) { printf("\nit is equal to 1"); }
else { printf("\n it is equal to other value"); }
system("pause");
return 0;
}