C++键盘检测学习

本文介绍了在C++中实现键盘检测的两种方法,包括使用GetAsyncKeyState宏定义简化键盘状态检查,以及利用_conio.h_库中的_getch()函数获取键盘输入。通过示例代码,展示了如何检测特定按键,如wasd,以便于游戏控制或其他交互应用。
摘要由CSDN通过智能技术生成

因为想做游戏,就想得到键盘检测的功能。

在网上搜了许久,有两个可行的方法:

  1. GetAsyncKeyState(key_name)
  2. _getch()

1,一般用宏定义简化一下用&运算得到键盘是否摁下。例如:

        #define key_down(key_name) ((GetAsyncKeyState(key_name))?1:0)

key_down就是自己定义的简单函数,你也可以用an_xia(key_name),jian_pan(key_name)

然后()里的key_name是代指键盘字符的,因为我的需要,我记下了键盘字母对应大写。例如按下A,用key_down('A')就可以检测到了。

//这个函数好像一直检测键盘,我不知道怎么按一下检测一下,用Sleep()也不好用。

//然后,有人用这个检测键盘弹起,就是把1:0改成0:1,

                 #define key_down(key_name) ((GetAsyncKeyState(key_name))?0:1)

 我试了下,感觉不太明显。

 

2,这个在conio.h中,con是console的缩写,io是输入输出,控制台输入输出的函数。

_getch(),得到的是一个int,你可以int 一个变量接受键盘输入,例如:

int a;
a=_getch();
if(a==97)
{
    cout&l
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值