为什么要连续写2个getchar();??
答案:3 悬赏:0
解决时间 2021-01-05 11:47
- 提问者网友:趣果有间
- 2021-01-04 21:00
为什么要连续写2个getchar();??
最佳答案
- 二级知识专家网友:玩家
- 2021-01-04 22:02
连用两个getchar,前一个getchar取得的字符就被忽略了.那为啥要忽略前一个字符呢?
原来,前一个取得的字符是"回车",后一个取得的字符才是我们想要的.
当你输入文件名并且回车后,scanf从键盘缓冲区中取走了文件名,但是”回车”这个字符还留在缓冲区中.所以要用一个getchar来扔掉它.
原来,前一个取得的字符是"回车",后一个取得的字符才是我们想要的.
当你输入文件名并且回车后,scanf从键盘缓冲区中取走了文件名,但是”回车”这个字符还留在缓冲区中.所以要用一个getchar来扔掉它.
全部回答
- 1楼网友:归鹤鸣
- 2021-01-04 23:49
getchar()是从键盘缓冲区里取走一个字符,两次就是取走两个字符。
比如缓冲区里的是12345,用两次后就只有345了。哈哈哈。你地明白?
比如缓冲区里的是12345,用两次后就只有345了。哈哈哈。你地明白?
- 2楼网友:摆渡翁
- 2021-01-04 22:14
一个getchar();读入一个字符
2个
ch=getchar();
ch=getchar( );
写一起忽略前一个字符。
2个
ch=getchar();
ch=getchar( );
写一起忽略前一个字符。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯