未命名.jpg (44.08 KB, 下载次数: 22)
输出
rosynirvana 发表于 2014-3-16 22:46
原因是cin的flag被清掉了,但是流里面还有EOF这个字符既然知道是残留字符,那就一般的清理残留字符的手段就 ...
981013 发表于 2014-3-21 20:31
试了一下,好像和平台有关,linux下没有问题,Windows下要求在cin.get时再按一个回车,Mac OS则根本没用
...
rosynirvana 发表于 2014-3-21 21:28
首先,和系统处理回车的方式无关
测试代码
981013 发表于 2014-3-23 14:48
Mac OS (UNIX)下这段代码就死循环了其他系统下都没问题
rosynirvana 发表于 2014-3-23 14:54
没明白,那段本来就是死循环啊?
981013 发表于 2014-3-23 15:07
就是不停输出-1
rosynirvana 发表于 2014-3-23 15:08
你在OS X下面用的是哪个shell? bash还是其他的? 我去试试看
981013 发表于 2014-3-23 15:20
是bash
不过一般用的是xCode的虚拟终端
The end-of-file condition is remembered, even on a terminal, and all subsequent attempts to
read will return EOF until the condition is cleared with clearerr(3).
rosynirvana 发表于 2014-9-7 21:58
当时的回复有个地方不怎么确定,这个问题其实可以比照一下OSX和Linux的man page
OSX getchar (3)
rosynirvana 发表于 2014-9-7 21:58
当时的回复有个地方不怎么确定,这个问题其实可以比照一下OSX和Linux的man page
OSX getchar (3)
rosynirvana 发表于 2014-9-7 21:58
当时的回复有个地方不怎么确定,这个问题其实可以比照一下OSX和Linux的man page
OSX getchar (3)
981013 发表于 2014-9-8 11:30
也就是说在Mac OS上终端记住了EOF,然后在clearerr之前都不能正常读取?
欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/) | Powered by Discuz! X3.2 |