如何检查cin中是否有任何内容[C ++]

时间:2009-12-18 12:09:07

标签: c++ istream

有没有办法检查cin中是否有东西?我试过peek()但是如果没有peek()等待输入,那就不是我想要的了。 谢谢

2 个答案:

答案 0 :(得分:5)

你不能使用cin读取键击,然后如果没有可用的话继续做其他事情,我认为这是你可能想要的。 cin是一个缓冲流,根本不起作用。实际上,使用标准C ++无法实现此目的 - 您必须使用特定于操作系统的功能。

答案 1 :(得分:4)

C ++流和streambuf是同步的,即它们会阻塞,直到有足够的输入来读取。没有可移植的方法来异步检查流。考虑从一个单独的线程调用peek()。

相关问题