C++ cin keypress event

后端 未结 4 1668
天命终不由人
天命终不由人 2021-01-05 16:47

I believe this is a very simple question, but I can\'t find a simple answer to it. I have an infinite loop, e.g. while(1), for(;;), and I need to b

4条回答
  •  时光说笑
    2021-01-05 17:35

    Well, what you want is asynchronous input. All of the methods provided by cin wait for enter. You will have to use system-specific functions for that, or use a library that will do it for you.

    What you need to do is to not only process your logic in a while loop, but also listen from message pipe from your OS. If you want some more information about that one, please drop a comment.

    EDIT: There's one other way, but I wouldn't recommend it as it can be non-portable I believe. The following code compiles and runs under VS2012RC.

    #include
    #include
    
    using namespace std;
    
    int main()
    {
       cout << "Enter a character";
       getch();
    }
    

提交回复
热议问题