getchar()函数由 “宏” 实现:#define getchar getc(stdin);
getchar有一个int 类型的返回值。
当程序调用getchar()时,程序就等着用户按键。用户输入的字符被存放在键盘的缓冲区中。直到用户按下回车为止。
当用户按下回车键之后,getchar才开始从stdin流中每次读入一个字符。getchar函数的返回值是用户输入的字符的ASCLL码。
ASCLL(America standard code for Information Interchange)美国标准信息交换代码
若文件结尾则返回-1(EOF),且将用户输入的字符回显到屏幕。
Caution: 如果用户在按下回车键之前,输入了不止一个字符,其他字符会保存在键盘缓冲区中,等待后续getchar()调用读取。
也就是说后续的getchar()函数调用不会在等待用户按键了,而是直接读取缓冲区中的字符,知道缓冲区中的字符完全读完后,
getchar()函数的调用才又会等待用户按键。
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
int main()
{
char c ;
while(isalpha(c = getchar()))
printf("%c\n", c);
system("pause");
return 0;
}