void getInputData(void) {
char c = 0;
while (c != 'x') {
printf("Enter a letter:");
fflush(stdout);
c = getchar();
printf("You entered: %c n",c);
fflush(stdout);
getchar();
}
printf("nYou entered x and the loop exitedn");
}
为什么最后的getchar()
在这个函数中是必要的?我不明白为什么会在那里
假设您在程序中使用了行缓冲,每次在用户输入的字母之后进行完善,直到点击'x':
T n
H n
我 n
年代 n
x n
只有按下键盘上的ENTER/RETURN键才能发送数据。你应该处理n
换行字符,以获得下一个字符,这就是为什么使用getchar()
是必要的。