原文链接: c++ 异步获取输入
下一篇: cvxopt 非线性规划问题
需求,异步获取输入并将输入输出
效果,在死循环中不停输出no key
使用conio 中的函数
kbhit是否有按键输入,是返回1,否返回0
getch 用于获取输入字符
这里不使用cin或getchar是因为他们获取输入时,必须停掉当前循环,直到有输入才会继续执行,但是使用conio 库中的函数可以在循环运行过程中获取输入数据,不需要停掉当前循环
#include<conio.h>
#include<iostream>
#include <stdlib.h>
#include <windows.h>
using namespace std;
int main()
{
while(1)//当没有键按下
{
cout<<"no key "<<endl;
// 如果有按键输入,将其捕获并输出
if(kbhit()){
char t = getch();
cout<<"char is: "<<t<<endl;
}
Sleep(100);
}
}