问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言输入字符串如果为EOF则跳出循环 怎么弄啊

发布网友 发布时间:2023-03-20 19:54

我来回答

4个回答

热心网友 时间:2023-10-08 20:04

gets()返回的是指针,如果输入有误或者没有输入的话返回的是空指针,所以应该是gets(a)!=NULL

而且最好写成while(gets(a)!=EOF && gets(b)!=EOF),因为逗号表达式取的是最后一个表达式的值,照你那意思改写的话,要按两次Ctrl+C才能退出,这个只要按一次就行了

热心网友 时间:2023-10-08 20:05

while(scanf("%s%s",a,b)!=EOF)就是这个,你得连按两次ctrl+z才是EOF

热心网友 时间:2023-10-08 20:05

你改为文件输入输出
scanf("%s%s",a,b) 不好,因为碰到空格就BYEBYE了
是这么弄的
while (gets(a)!=EOF && gets(b)!=EOF)
gets()是两个函数,有两个返回值,你这么弄就相当于a,b要返回值

热心网友 时间:2023-10-08 20:06

没记错的话,gets根本就没有EOF这一说,你看它返回的都是指针~
因该是scanf才有EOF的,但是1L不对。
while(scanf("%s",a)!=EOF && scanf("%s",b)!=EOF)这个才对。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
中联重科ZE1250E挖掘机技术参数 全球黑卡是什么? 你们知道学日语哪个培训机构好吗?推荐推荐吧。 描写高情商的晚安短句(你只能靠自己,别无选择) 让你陷入沉思的深沉朋友圈文案 比较冷淡的伤感朋友圈 赛尔号泰达性格天真刷什么? 我抓了只满个体的泰达,性格温顺,请问应该刷什么学习力 “肯同雪月吊兰荪”的出处是哪里 ...高,怎么还亏损这么多钱,开通的财通证券,用的同花顺炒股软件... 怎么看股票中(安信)的均线 淘宝麻六记是真的吗 大家为什么买麻六记酸辣粉 快手上的麻六记酸辣粉是真的吗 涤纶是什么材料做的 5+4加4+3等于几 5+4加3+1等于几 5+3加3+2等于几 5+2加3-3等于几 1+5加四五+3等于几 5加1再-3等于几 5+3加3等于几 5+3等于几加一 永州交通违章 java语言怎么用for循环创建字符串数组fontSizes={“1”,"2","3",……”100“}? for循环添加至数组 要用for循环,给String数组里写数据 如何在C语言中用一个for循环向一个名为name的数组中一个个输入字符串 波利熊怎么养 面纹蜜和蜜波利哪个贵 一个半月的蜜波利算老吗? 点球一球几分 世界杯点球大战赢了比分怎么算 点球决胜时进球算不算数? 点球大战怎样计算胜负的? 陈太丘与友期行,期日中。 陈太丘与友期行下车引之的用意是什么 武汉建新赵氏怎么样 赵韶剑跟赵建新赵氏集团有关系吗 建新赵氏集团是500强吗 建新赵氏集团上市了吗 建新赵氏的机脚垫怎么样 宁海建新赵氏科技住宿怎么样 蚂蚁庄园沙漠里的沙子能直接用来建造房屋吗 skype账号live开头怎么添加 有哪些软件是win10系统不能用了 中航信托和鲸钱包的关系 感冒了查癌胚抗原有影响吗 感冒会引起核酸检测呈阳性吗? 感冒对检测前列腺特异抗原有无影响? 感冒会对体检结果有影响吗