C:如何模拟EOF?

我目前正在阅读K&R的书并在第一部分中输入示例,并且有几个例子如下:


while((c = getchar()) != EOF) {

    //do something

}

我正在Windows框中测试这些示例,从而从cmd提示符运行已编译的exe文件。


要测试上面的例子,我该如何模拟EOF?也就是说,从命令提示符测试示例时,基本上如何使循环停止?


千巷猫影
浏览 666回答 4
4回答

幕布斯7119047

要输入EOF,请使用:CtrlZWindows中的^ Z()在类Unix系统上的^ D.

浮云间

首先,按:Ctrl ^ X,下一步:Ctrl ^ D.

慕妹3146593

您还可以通过显式给int变量值-1来模拟EOF。查看此代码以获得更清晰:#include<stdio.h>int main() {&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; // char ch=getchar()&nbsp; &nbsp; // int ch=-1;&nbsp; &nbsp; if(ch==EOF) { printf("\nEOF: %d",EOF); }&nbsp; &nbsp; if((ch!=EOF)==0) { printf("\nit is equal to 0"); }&nbsp; &nbsp; if((ch!=EOF)==1) { printf("\nit is equal to 1"); }&nbsp; &nbsp; else { printf("\n it is equal to other value"); }&nbsp; &nbsp; system("pause");&nbsp; &nbsp; return 0;}
打开App,查看更多内容
随时随地看视频慕课网APP