fgets?c语言gets函数用法
一、fgets函数的作用
通俗来讲的话,fgets()函数的作用就是用来读取一行数据的。但要详细且专业的说的话,fgets()函数的作用可以这么解释:从第三个参数指定的流中读取最多第二个参数大小的字符到第一个参数指定的容器地址中。
在这个过程中,在还没读取够第二个参数指定大小的字符前,读取到换行符'\n'或者需要读取的流中已经没有数据了。则提前结束,并把已经读取到的字符存储进第一个参数指定的容器地址中。
在正常情况下fgets()函数的返回值和它第一个参数相同。即读取到数据后存储的容器地
二、c语言gets函数用法
gets函数是C语言中用于从标准输入流中读取字符串的函数。它的使用方法是简单的,只需调用gets函数并将其参数设置为存储字符串的变量即可。
例如,如果要从键盘上读取用户输入的字符串并存储到char类型的变量str中,只需使用gets(str)即可。然而,在实际应用中,由于gets函数不具有输入长度限制,可能导致缓冲区溢出等安全问题。因此,一般建议使用fgets函数来代替gets函数,以提高代码的安全性。
三、为什么有些c语言不能用gets
执行了,它把执行scanf("%d",&n);时遗留在缓冲区中的回车符收走了;gets函数以回车符为结束命令,所以它以为你已经输入完毕了。解决办法很多,但正宗的是在gets前面加一句fflush(stdin);把缓冲区清空。