论Scanf、Gets、Getchar的区别

简介: 论Scanf、Gets、Getchar的区别

getchar()函数、gets()、scanf()函数是C语言中较为常用的输入输出函数。


getchar每一次从键盘的缓冲区里只可以读取单个字符,但无限输出时,可ctrl+z--<回车>可以停止输出,注:回车键也是字符,会放入缓冲区。


scanf只有遇见空白字符才会停止,且空白键之后的字符(含空白键、回车键)是暂时放在键盘缓冲区的。如输入1234 234<回车>,输出只有空格前的1234,剩下的空格234则在键盘缓冲区。

9972d8cf47bd467f943da62506307ffb.png

gets则是读取字符串直到回车键结束,但回车键不属于该字符串(也不会存在于键盘缓冲区),调用格式为:gets(s)


注:putchar值能输出字符,而printf可以输出多种类型。


自己写的键盘缓冲区的概念——链接:键盘缓冲区_tq02的博客-CSDN博客


       ---------------来自一个不知名的菜鸟大二学生


                                                                请路过的帅哥美女点点赞支持支持我,ヾ(o′▽`o)ノ°°谢谢

目录
相关文章
|
6月前
|
C语言
你真的学会了printf和scanf函数吗?
你真的学会了printf和scanf函数吗?
|
6月前
|
编译器 C语言 C++
scanf函数
该文介绍了C语言中`scanf`函数用于输入变量值,而`printf`函数用于输出变量值。`scanf`在读取数值时会自动过滤空白字符,允许数据间有空格或换行,不影响解析。`scanf`返回值表示成功读取的变量数,0表示未读取或匹配失败,EOF表示读取错误或文件结尾。常见占位符包括 `%c`(字符)、`%d`(整数)、`%f`(浮点数)、`%s`(字符串)和`%[]`(指定字符集)。对于`%c`,不会忽略空白字符,但可加空格跳过前导空白。文章还提及在VS2022中,`scanf`被认为是不安全的,推荐使用`scanf_s`,并提供了如何在VS中使用`scanf`的解决方法。
118 1
|
6月前
|
C语言
1.printf()2.scanf()
1.printf()2.scanf()
34 0
scanf和getchar区别
scanf和getchar区别
172 0
|
6月前
getchar()&putchar()函数
getchar()&putchar()函数。
37 1
|
11月前
c中scanf函数注意点
c中scanf函数注意点
77 0
|
11月前
|
缓存
scanf和printf函数
scanf和printf函数
138 0
|
存储 Serverless C语言
printf()和scanf() (详解)
printf()和scanf() (详解)
155 0
|
人工智能
scanf函数与getchar函数区别
scanf函数与getchar函数区别
144 0
|
C语言
C语言常见输入函数(scanf(),getchar(),getche(),getch(),gets())大汇总
C语言常见输入函数(scanf(),getchar(),getche(),getch(),gets())大汇总
97 0