我有以下代码行:while((temp = getchar())!= EOF){printf("Hello");}
我预计程序会为每个字符打印Hello,但它会为每个按下的enter打印。我怎样才能把它变成我的意图呢?
发布于 2021-12-06 08:51:42
从键盘输入字符时,每个字符都进入缓冲区,包括enter(\n)字符。getchar函数将依次接受缓冲区中的每个字符,当然还将包含enter字符。您必须检查getchar函数的返回字符是否输入:
while ((temp = getchar()) != EOF) {
if (temp != '\n') {
printf("Hello\n");
}
}https://stackoverflow.com/questions/70242655
复制相似问题