提示:本文是关于C语言字符串输入的两个函数的介绍
文章目录
前言
在C语言中,有很多关于输入字符串的函数。在学习和使用C语言时,我们也无法避免需要输入字符串,因此本文是关于C语言中输入字符串的两个函数 gets() 和 scanf() 的。
一、gets()函数
功能:从标准输入流 stdin 中读取一行,并将其存储在缓冲区中。该行由第一个换行符 ('\n') 之前的所有字符组成。
注意:预留存储字符串的空间要足够大.
头文件:
#include<stdio.h>
代码示例:
#include<stdio.h> int main() { char arr[20] = { 0 }; gets(arr); printf("%s\n", arr); return 0; }
输入与输出:
hs sfgs jsf,fh hs sfgs jsf,fh
二、scanf()函数
功能:一般输入字符串、数组、整型...的函数(不多介绍啦)
注意:在使用scanf()函数输入字符串时,遇到空格,默认该字符串输入结束。
解决方案:输入字符串时将 %s 改为 %[^\n]s
头文件:
#include<stdio.h>
代码示例:
#include<stdio.h> int main() { char arr[20] = { 0 }; scanf("%[^\n]s", &arr); printf("%s\n", arr); return 0; }
输入与输出:
fhaa sjgf df fhaa sjgf df
总结
无论是scanf()函数,还是gets()函数,使用时都具有缺陷
这篇博客如果对你有帮助,给博主一个免费的点赞以示鼓励,欢迎各位🔎点赞👍评论收藏⭐️,谢谢!!!
如果有什么疑问或不同的见解,欢迎评论区留言哦。