有没有办法检查cin中是否有东西?我试过peek()但是如果没有peek()等待输入,那就不是我想要的了。 谢谢
答案 0 :(得分:5)
你不能使用cin读取键击,然后如果没有可用的话继续做其他事情,我认为这是你可能想要的。 cin是一个缓冲流,根本不起作用。实际上,使用标准C ++无法实现此目的 - 您必须使用特定于操作系统的功能。
答案 1 :(得分:4)
C ++流和streambuf是同步的,即它们会阻塞,直到有足够的输入来读取。没有可移植的方法来异步检查流。考虑从一个单独的线程调用peek()。