我一直在阅读 Brian W. Kernighan 和 Dennis M. Ritchie 的 The C Programming Language 并且在字符输入和输出方面,特别是在文件复制方面。书中的例子
#include <stdio.h>
int main(void)
{
int c;
c = getchar();
while (c != EOF)
{
putchar(c);
c = getchar();
}
return 0;
}
完美运行。
但我决定自己动手改写一下:
#define <stdio.h>
int main(void)
{
int c;
printf("Please enter a digit: ");
c = getchar();
while (c != EOF)
{
printf("The digit entered was: ");
putchar(c);
printf("Please enter a digit: ");
c = getchar();
}
return 0;
}
编译执行后,我的代码的结果是:
Please enter a digit: 9
The digit entered was: 9Please enter a digit: The digit entered was:
Please enter a digit: *cursor is here*
输入应该是:
Please enter a digit: 9
The digit entered was: 9
Please enter a digit: *the cursor should be here*
另外,我在理解 EOF 时遇到了一点问题。如果有人可以帮助我解决这些问题,那就太好了。
谢谢!