【发布时间】:2015-01-31 20:28:44
【问题描述】:
我是c编程的新手,所以希望你们能帮助我解决这些问题。
1。我以为putchar() 每次只打印 1 个字符,而当我输入几个像 'hello' 这样的字符时,它会在允许我输入下一个输入之前打印 'hello'?我认为它应该只打印 'h' 然后允许我输入其他输入,因为 getchar() 每次只返回一个字符。
2。如何使循环停止?我知道 EOF 的值为 -1,但是当我输入 -1 时,循环仍然运行。
#include <stdio.h>
main()
{
int c = getchar();
while(c != EOF){
putchar(c);
c = getchar();
}
}
【问题讨论】:
-
关于#1,您正在寻找
kbhittype 功能。这不是可移植stdin的工作方式。 see this question for more info。关于#2,see this question's various answers
标签: c