如何在终端中输入EOF的值
我有一个C程序。
void main () { int c=1; if (getchar()!=EOF) printf("%d",c); else printf("%"); }
我应该在终端上输入什么来产生EOF?
不确定你对c
变量的意思,它的值永远不会改变所以它似乎毫无意义。
在Windows中, Control + Z是典型的键盘快捷键,意思是“文件结束”,在Linux和Unix中它通常是Control + D.
- 由于某种原因,EOF被包装在宏中 – 您永远不需要知道该值。
- 从命令行,当您运行程序时,您可以使用Ctrl – D (Unix)或CTRL – Z (Microsoft)将EOF发送到程序。
-
要确定您的平台上EOF的价值,您可以随时打印它:
printf ("%i\n", EOF);
您可以使用以下方法模拟EOF:
- Windows: ctrl + Z.
- Unix: ctrl + D.
到目前为止,在任何其他答案中都没有提到,但您可能需要按右键组合(^ D或^ Z)2或3次才能实际发出EOF信号; 看这里解释。