C语言 while(scanf("%s", a[i++])) ; while循环scanf与数组自增搭配循环无法退出?

C语言
while(scanf("%s", dictionary[i++])) ;
linux系统下,已经尝试过回车加ctrl + D,但无作用

1个回答

while((scanf("%s", dictionary[i++])) != EOF);
这样写
ctrl+z结束输入

qq_39458737
qq_39458737 哦,我明白i了。scanf读取失败的返回值是-1也就是EOF,while要判断0才能退出。谢谢帮助。
9 个月之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复qq_39458737: 对,不同系统快捷键不同
9 个月之前 回复
qq_39458737
qq_39458737 回复: D就有效了,能解释一下原因吗?谢谢
9 个月之前 回复
qq_39458737
qq_39458737 奇怪的是加了EOF之后 ctrl +
9 个月之前 回复
qq_39458737
qq_39458737 没有本质区别呀, ctrl + z是在windows环境下的
9 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问