是否可以基于键盘输入退出C ++循环而不必每次迭代都输入内容?
例如
while(checkkeyboardinput != 'q')
{
do work
}
我觉得这很容易,但谷歌没有帮助我,我不记得怎么做了。谢谢你的帮助。
编辑:我正在使用VS2008
答案 0 :(得分:4)
尝试_kbhit()。据我所知,它会检查缓冲区中是否有任何键盘输入等待。
http://msdn.microsoft.com/en-us/library/58w7c94c%28VS.80%29.aspx
_kbhit
检查控制台是否有键盘输入。
int _kbhit(void);
返回值
如果已按下某个键,_kbhit将返回非零值。否则,它 返回0.
<强>说明强>
_kbhit函数检查控制台 最近的击键。如果 function返回非零值,a 击键在缓冲区中等待。 然后程序可以调用_getch或 _getche获得击键。
答案 1 :(得分:3)
如果您使用的是ncurses,则可以非常轻松地使用getch()
。但是,没有标准的方法来做你想做的事。
答案 2 :(得分:1)
你忽略了提到你正在运行的操作系统。获取键盘输入取决于操作系统(甚至依赖于库 - 例如,如何使用GTK显然是特定于GTK。)
嗯,GTK可以在多个操作系统上运行,所以......但是你明白了。您需要详细说明您的工作环境以获得合理的答案。