在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函数会检查输入字符串的长度是否超过了指定的字符数组长度,从而避免了缓冲区溢出的问题。

