C语言scanf("%c"),getchar(),getch(),getche()的问题

1、这些函数读取的字符都是存放在哪的?有些是存放在同一地方的吗?(sacnf()和getchar()好像就是存放在同一地方的)2、假如存放在同一地方时调用它们其中几个会冲... 1、这些函数读取的字符都是存放在哪的?有些是存放在同一地方的吗?(sacnf()和getchar()好像就是存放在同一地方的)

2、假如存放在同一地方时调用它们其中几个会冲突吗?
3、比如说用getch()做按任意键继续的暂停效果,当按下任意键后这个任意键会不会被存起来从而影响其他类似的函数?就像用getchar()输入一个字符,当按下Enter键同时也会把Enter(\n)存起来,这个\n就会对后面的某些功能照成影响。
4、还有按任意键继续不是有system("pause");这个函数吗?为什么要用到字符输入函数?是不是system("pause");这个函数有什么缺点?这个函数功能是怎么实现的?会不会也和其他输入函数一样存放字符?
5、之前我说的getchar()会存放\n,为什么在这之后再写一遍getchar()或其他方法就能去掉\n?
不好意思。。。。我是新手,问题可能比较多。。。。希望大家能详细回答下,感激不尽!!
之前我也百度过好多都不懂,比如说getchar()输入的字符是存在键盘缓冲区的,所以干脆来问了
展开
 我来答
lygszmjj
2014-08-19 · TA获得超过1814个赞
知道小有建树答主
回答量:1192
采纳率:0%
帮助的人:419万
展开全部
1·这些函数都是从键盘缓冲区读取键盘的按键输入。键盘缓冲区由系统进行管理。
2.没什么冲突。
3.这些函数Scanf()要求必须把输入保存于内存变量中,其它函数可不保存。
4. 实现一个功能可由多个函数突现,不一定就好坏分明,只不过在不同的场合各有优势。
追问
哦,不好意思,我第三那条说的存起来不是说存在内存中,是存在键盘缓冲区中,其实我第2条说的冲突就是指用getchar()存放字符会把回车也存放进去,这样的冲突还有吗
追答
键盘缓冲区(缓冲队列)内的键值一旦就某个函数所读取,该键值对程序来说就不在缓冲区中存在了。所以你说的冲突不存在。
至于回车,有些函数是将其作为数据分隔符使用,如scanf。另外的函数则可接收该健値。
乾璺
2014-08-19 · TA获得超过692个赞
知道小有建树答主
回答量:582
采纳率:0%
帮助的人:99万
展开全部
自己百度百科这些函数 有详细解释。 你说的这些问题都被很好的解决了。 如果你能读懂头文件中的这些函数怎么写的 大概你就懂了
更多追问追答
追问
大哥我是新手,初学C,要是能读懂我就不来问了,好歹我都打那么多字,你就一句让我去问百度吗
追答
新手你问这些了解这些? 自己都看不懂,问来做什么。。。  
涉及到操作系统,编译原理,数据结构三部分的知识点,有人给你解释你也不懂。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式