GetAsyncKeyState 同时按下两个按键松开后为什么有时候其中一个按键一直返回-32768??

n00bzx 2019-10-24 11:58:32
#include<windows.h>
#include<iostream>
int main()
{
while(1)
{
if ((GetAsyncKeyState(87) & 32768)||(GetAsyncKeyState(83) & 32768))
{
std::cout<<2;//松开后有时候不断地输出2
}
}
}
...全文
246 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
提及 2019-10-24
  • 打赏
  • 举报
回复
纠正:并非无意的数字,26键就是大写 ascii 字母值(逃,ascii 的值都记不住 ------- 没问题,获得 4632 按下,没有出现停不下来,是不是你键盘问题,试试其他键
n00bzx 2019-10-24
  • 打赏
  • 举报
回复
多试几次,同时地,就会发现222222222一直停不下来了...但再按一下又正常了...
提及 2019-10-24
  • 打赏
  • 举报
回复
我试了一下,正常
提及 2019-10-24
  • 打赏
  • 举报
回复
我服了,竟然都是无意的数组,天呐
提及 2019-10-24
  • 打赏
  • 举报
回复
别用无意义的数字 https://docs.microsoft.com/zh-cn/windows/win32/inputdev/virtual-key-codes
n00bzx 2019-10-24
  • 打赏
  • 举报
回复
顶.......

64,661

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧