【发布时间】:2023-02-03 08:47:57
【问题描述】:
我似乎无法弄清楚如何在 C 中使用 GetKeyState 函数时防止密钥被持有。有人能知道如何做到这一点吗?
【问题讨论】:
-
您如何想象一个 C 程序会导致人类将手指从键上移开?
-
C中没有
GetKeyState。它是一个Win32 API函数 -
@Eric 产生电击,也许吧?不过,不确定是否已(尚未)将其合并到标准库中。
-
@AdrianMole 从技术上讲,C 标准允许通过未定义的行为发生这种情况;)
我似乎无法弄清楚如何在 C 中使用 GetKeyState 函数时防止密钥被持有。有人能知道如何做到这一点吗?
【问题讨论】:
GetKeyState。它是一个Win32 API函数
您可以将 SetKeyboardState 与 GetKeyState 结合使用,并将密钥的高位翻转为 0 而不是 1。根据 MSDN
返回值指定指定虚拟键的状态,如下: 如果高位为1,则key为down;否则,它就起来了。
请注意,这不是标准 C,而是 Win32 API 的一部分。
【讨论】: