在C語言中,可以使用gets
函數或fgets
函數來讀取一行字符串。
gets
函數:#include <stdio.h>
int main() {
char str[100];
printf("輸入字符串:");
gets(str);
printf("輸入的字符串是:%s\n", str);
return 0;
}
fgets
函數:#include <stdio.h>
int main() {
char str[100];
printf("輸入字符串:");
fgets(str, sizeof(str), stdin);
printf("輸入的字符串是:%s\n", str);
return 0;
}
其中,gets
函數會讀取一行字符串(包括空格),并將其存儲在指定的字符數組中。但是,由于gets
函數不會對輸入的字符串長度進行檢查,容易導致緩沖區溢出的安全問題。
而fgets
函數會讀取指定長度的字符串(包括換行符),并將其存儲在指定的字符數組中。同時,fgets
函數會檢查輸入字符串的長度是否超過了指定的字符數組長度,從而避免了緩沖區溢出的問題。