scanf eof cin

今天发现遇到一个奇怪的问题,群里的童鞋说POJ这样写TLE

while(~scanf("%s%s", s,e))

但是这样写就AC了

while(scanf("%s%s", s,e)!=eof)

后来发现,G++两个都可以,但是C++(MSVC)第一个就会TLE了

看了官方的scanf资料,http://www.cplusplus.com/reference/cstdio/scanf/?kw=scanf
发现还是比较模糊,尤其是eof之前就有阴影,感觉有时候会很奇怪。看过一篇详细的eof博客,还是没理清头绪

while(cin>>s>>e)

这种就不需要管eof的事情,OJ后台可能还是重定向到文件里,然后去读文件的

Posted by richard爱闹 - 7月 23 2014
如需转载,请注明: 本文来自 Richard