1 /************************************************************************* 2 > File Name: getchar2.c 3 > Author: Mr.Yang 4 > Purpose:演示getchar输入整行文本 5 > Created Time: 2017年05月20日 星期六 09时22分42秒 6 ************************************************************************/ 7 8 #include9 #include 10 11 #define MAX 8012 13 int main(void)14 {15 char buffer[MAX+1];16 int ch = 0;17 int i = 0;18 19 while((ch = getchar()) != '\n' && i < MAX)//函数getchar()读取stdin流中的下一个字符,它具备缓冲和回显功能;因此此处由于getchar()是一个缓冲输入函数,在用户按下enter之前,该函数不会收到任何字符,但是用户输入的每个字符都会被回显到屏幕上,用户按下enter键之后,之前输入的所有字符(包括换行符)都被操作系统发给stdin,gechar函数每次返回一个字符,而该字符又被赋值给ch20 {21 buffer[i] = ch;22 buffer[i++];23 }24 buffer[i] = '\0';25 printf("%s\n",buffer);26 27 return 0;28 }