gpt4 book ai didi

c++ - 尝试不阻塞地读取键盘输入(Windows、C++)

转载 作者:可可西里 更新时间:2023-11-01 14:07:45 26 4
gpt4 key购买 nike

我正在尝试编写一个 Windows 控制台应用程序(在使用 g++ 编译的 C++ 中),它将循环执行一系列指令,直到完成或直到按下 ctrl-z(或其他一些按键)。我目前用来捕获它的代码不起作用(否则我不会问,对吧?):

if(kbhit() && getc(stdin) == 26)
//The code to execute when ctrl-z is pressed

如果我按下一个键,它会被回显,应用程序会一直等到我按下 Enter 才能继续。值为 26 时,它不会执行预期的代码。如果我使用 65 之类的值作为要捕获的值,如果我按 A 然后按 Enter,它将重新路由执行。

有没有一种方法可以被动地检查输入,如果不是我要找的就把它扔掉,或者在我要找的时候做出正确的 react ? ..之后无需按 Enter 键?

最佳答案

尝试 ReadConsoleInput避免煮熟模式,和GetNumberOfConsoleInputEvents以避免阻塞。

关于c++ - 尝试不阻塞地读取键盘输入(Windows、C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2654504/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com