该代码源自"The C Programming Language,Second Edition":
#include <stdio.h>
main()
{
long nc;
nc = 0;
while(getchar() != EOF)
++nc;
printf("%s: %ld\n", "number of characters", nc);
}
Run Code Online (Sandbox Code Playgroud)
按"输入"键(EOF)后为什么不执行"printf"语句?
回车键不是 EOF.根据您的系统,它将发送回车符(0x0D或'\r'
),换行符(0x0A或'\n'
)或两者.
在Linux(可能是Unix)上,可以通过Ctrl + D发送EOF.在Windows上,它应该是Ctrl + Z(但您可能需要在之后按Enter键).