#include <stdio.h>
int main()
{
char c;
while ((c=getchar()) != EOF)
putchar(c);
}
Run Code Online (Sandbox Code Playgroud)
为什么当我输入诸如“omar”之类的文本时,将 char print“omar”放回去。它不应该重复打印“o”吗,因为 getchar 只会采用第一个字符。我知道我错了,可能是因为我不知道 getchar 或 putchar 到底是如何工作的,所以有人可以解释一下它们是如何工作的吗?另一个问题为什么 getchar 和 putchar 在没有 while 循环的情况下正常工作,但在 while 循环内行为有所不同。