问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

C语言中gets()函数和清空缓冲区问问题

发布网友 发布时间:2022-04-29 21:41

我来回答

2个回答

热心网友 时间:2022-06-23 12:06

scanf("%*[^\n]");
^取反或者“非”,[^\n]就是除了回车什么都可以被scanf读到。*表示被读到了但是不把读到值或者字符赋值给任何变量。
%*[^\n]就是读取来自键盘的出去回车外的任意字符,并不赋值给变量。
scanf("%*c");
就一个*,和上边表示一样就是读到了不赋值给任何变量。

再看,scanf("%[^\n]%*c",str)读入一行字符,赋值给str变量。如果c前面没有*,那么就需要str后面再写一个char类型的ch。这就告诉你*表示读到了但是不赋值给任何变量。
那么scanf("%*[^\n]%*c")这句话,应该能理解吧,两个格式控制符里面都有*,就是都读到了都不赋值变量。

读到这里你应该差不多理解了,就是你的题中的两句scanf(相当于scanf("%*[^\n]%*c"))读到了你输入的abc,但是没有赋值给任何变量。然后到了gets(str4);读到了def赋值给str4,然后printf("%s\n", str4);后必然显示def。

清空缓存区用fflush(stdin);这句代码。
键盘输入的东西都是放在缓冲区的这款区域,有变量过来了就带走,没有变量就在那里呆着等待一个变量来带它走。但是这个时候缓冲区里面偶尔会有一些垃圾的字符,而影响了正常的输入,有的时候用getchar()带走一个两个的字符,但是如果还是不见效一句fflush(stdin);就可以了。

热心网友 时间:2022-06-23 12:06

scanf("%*[^\n]");接收除'\n'的任何字符,但不赋给任何变量。当你输入一个字符回车时就执行下一条语句scanf("%*c");了。这条语句是读一个字符不赋给任何变量,你刚才输入的'\n'就被它读取了,所以又顺序执行下面的gets(str4);了。
综上,其实不是要输入abc'\n'def'\n'才输出def,而是前面无论输入多少字符都无关,关键是要输入一个'\n'。你可以试试……
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
用手柄玩实况足球2012, 实况足球12如何进行手柄设置,以及窗口模式的设置? 带娃去感受乡村的夏天,这53条乡村游线要收藏好 一般签名用什么笔 怎么去追女孩的技巧 清朝有多少汉人被封王 《水滴石穿》告诉我们什么道理 重庆有哪些批发市场 重庆有哪些大型市场 重庆最大零食批发市场 社会实践活动日记 C语言中scanf和getchar问题一例。必有重谢. 云南昭通市盐津县有多少乡镇,各乡镇有多少人口 求 社会实践活动作文200字(4篇),不要关于工作的,谢谢了! 机箱风扇线正负极? 在输入数据类型和字符类型的两个scanf函数调用之间使用什么库函数以清除键盘缓冲区的字符? 售价2.38w,标致发布姜戈CLUB限量版,提供丰富增值项目 还是我,为什么这个没有清空缓冲区,但是scanf语句没有被跳过呢? 急求社会实践日记??? 安室奈美惠和滨崎步在日本谁更红? c语言中用了scanf语句就输不出结果把scanf删掉就能出结果是为啥 三篇小学生社会实践日记300字 scanf("%d%d",&a,&b)与scanf("%d,%d",&a,&b)的区别!! 宁波话里有种鱼叫haodie 学名叫什么? 安娜苏魔镜香水价格 为啥scanf清除键盘缓冲区失败 大众朗行点烟器电压是多少 写三篇社会实践体会,最少400字 大众桑塔纳点烟器怎么用,桑塔纳点烟器保险丝位置? c语言,scanf函数,在输入一个数据时,如何使数据进去缓冲区? 社会实践活动的作文 贵广高速铁路的贵广高铁沿途站点及市县 龙头鱼要怎么做好吃 文明礼仪我传递,社会实践活动日记 社会活动实践日记开头和结尾怎么写?麻烦大家了。 提供几篇社会实践日记 关于手机版口袋妖怪漆黑的魅影的金手指问题。 小学生以日记形式写一篇社会实践活动的作文有关于自己挣零花钱的 社会实践活动,日记里要有记载(不少于1000字) 高血糖的人能不能吃野米呢? 调酒师在成都的前景如何?哪儿可以去学调酒? 日记社会实践活动410字 《恋香》里的尹香之和金承天是中国人还是韩国人? 求超市促销员的暑假社会实践日记20篇,每篇最好有300字及以上 从高明三洲出发去高明盈香生态园?? 北京22中学算是几流的 北京市第二十二中学怎么样? 北京市东直门中学和22中学哪个好 北京22中学怎么样 北京市第22中学好吗
  • 焦点

最新推荐

猜你喜欢

热门推荐