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 #include <stdio.h> 9 #include <stdlib.h> 10 11 #define MAX 80 12 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函數每次返回一個字符,而該字符又被賦值給ch 20 { 21 buffer[i] = ch; 22 buffer[i++]; 23 } 24 buffer[i] = '\0'; 25 printf("%s\n",buffer); 26 27 return 0; 28 }