頭文件:#include <stdio.h>
函數getchar()用於從標准輸入控制台讀取字符,原型如下:
int getchar(void);
[參數]該函數沒有參數。
[返回值]函數的返回值為用戶輸入的第一個字符的ASCII碼,若出錯返回-1,且將用戶輸入的字符回顯到屏幕。如果用戶在按回車鍵之前輸入了不只一個字符,其他字符會保留在鍵盤緩沖區中,等待后續getchar()調用讀取。也就是說,后續的getchat()調用不會等待用戶按鍵,而是直接讀取緩沖區中的字符,直到緩沖區的字符讀取完畢后,才等待用戶按鍵。
[說明]getchar()非真正函數,而是getc(stdin)宏定義。
[實例]下面的示例演示了getchar()函數的使用,使用該函數獲取標准輸入控制台中的字符,直到按回車鍵結束,代碼如下。
#include<stdio.h> void main( ){ int c; while( (c=getchar()) != '\n' ){ //從控制台流中讀取字符,直到按回車鍵結束 printf("run here\n"); printf("%c\n", c); //輸出讀取內容,改成%d輸出時,顯示a,s,d對應為87,115,100 } printf("\n"); }
輸入:asd 回車
顯示:
asd
run here
a
run here
s
run here
d
運行上述程序后,將采用getchar()函數獲取當前控制台的輸入,直到按回車鍵結束,並將其輸出。
再來看一個例子,代碼如下: