一、scanf函數
scanf函數是C語言中最常用的從鍵盤獲取輸入的函數。您可以使用scanf()在C語言中從鍵盤讀取輸入。scanf()函數從標準輸入(stdin)讀取字符、數字、字符串等。您可以在需要輸入數據的任何一行使用scanf()函數。下面是一個使用scanf獲取鍵盤輸入的例子。
#include int main() { int num; printf("請輸入一個整數: "); scanf("%d", &num); printf("您輸入的整數是: %d",num); return 0; }
在上面的代碼中,我們使用scanf函數向用戶請求輸入一個整數。輸入的值被保存在變量num中,然後將該值輸出到控制台。
但是需要注意的是,scanf函數會在讀取到空格、製表符或者換行符時停止讀取。
二、getchar函數
getchar函數是一個用於從標準輸入流 stdin 中讀取一個字符的函數,函數原型為:int getchar(void);
通過循環讀取的方式可以獲取多個字符的輸入:
#include int main () { char c; printf("請輸入字符:"); do { c=getchar(); putchar(c); } while(c!='\n'); return 0; }
上述程序會一直獲取鍵盤輸入直到用戶輸入回車鍵換行。
三、fgets函數
fgets函數是一個用於從文件讀取字符串的函數,不過它也可以獲取鍵盤輸入。
#include int main () { char str[50]; printf("請輸入一個字符串:"); fgets(str,sizeof(str),stdin); printf("您輸入的字符串是:%s",str); return 0; }
fgets函數讀取字符串直到終止字符或達到最大長度。它會自動加上一個空字符null。
四、gets函數
gets函數也是獲取字符串輸入的函數,不過使用它時需要注意,因為gets函數沒有保護機制,輸入的字符串長度超過所定義字符串長度的話,會導致內存越界。
#include int main () { char str[50]; printf("請輸入一個字符串:"); gets(str); printf("您輸入的字符串是:%s",str); return 0; }
上述程序可以通過gets函數獲取鍵盤輸入。
五、結語
在C語言中,獲取鍵盤輸入是日常編程中經常使用到的功能。scanf和fgets函數是最常用的獲取鍵盤輸入函數,而getchar和gets函數則可以用於細緻的字符輸入獲取。
原創文章,作者:HKIXD,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/361598.html