键盘连续输入6个数字,如何知道每个数字输入的时间。

问题如题,时间最好精确些(ms)或者求得每两个数字输入的间隔时间,如何用C++实现,最好具体点,看有人说用键盘hook,但是没怎么看懂,求大神莅临指导。

2个回答

#include
#include
#include

using namespace std;

class KeyTime{
public:
int KeyCode;//按下的键值
time_t* Time = new time_t();//按下键的时间
};

int main(int argc, char *argv[], char *envp[]){

KeyTime* c[6];//输入次数
//输入数字
cout << "请按键:";
for (int i = 0; i < 6; i++)
{
    KeyTime* Item = new KeyTime();
    Item->KeyCode = _getch();
    time(Item->Time);
    c[i] = Item;
    cout << Item->KeyCode;
}
cout << endl;

//展示结果
for (int j = 0; j < 6; j++){
    char buffer[32];
    struct tm newtime;
    localtime_s(&newtime, c[j]->Time);
    strftime(buffer, 32, "%Y-%m-%d %H:%M:%S", &newtime);
    cout << "按下键" << c[j]->KeyCode << "于" << buffer;
    if (j > 0)
    {
        cout << "相差秒数" << difftime(*(c[j]->Time), *(c[j - 1]->Time));
    }
    cout << endl;
}
getchar();
return 0;

}

图片说明
图片说明

NISL_IOT
晓学森 补充一点,时间精确到毫秒的话可以用clock();非常感谢。
接近 5 年之前 回复
NISL_IOT
晓学森 非常感谢你的回答,_getch()函数解决了我的问题;
接近 5 年之前 回复
NISL_IOT
晓学森 非常感谢你的回答,_getch()函数解决了我的问题;
接近 5 年之前 回复

数组,储存按下数字的时间
当前已使用的数组元素

当按下数字调用()
{
数组[当前已使用的数组元素]=获取当前时间
当前已使用的数组元素++

}

输出数组
{
temp=数组的后一个减前一个
}

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

3
Java 从键盘输入一个只有加减法的等式,求结果
2
java中如果键盘输入一个字符串,这个字符串为一个空格……
8
HTML5 手机页面 输入表单被键盘遮挡住了
1
关于VS安装VA插件冰破解以后,不能正常显示键盘输入中文字符的问题
0
QT调用软键盘,要输入的编辑框在对话框Dialog中(UI界面),怎样才能使得软键盘输入到编辑框中
2
iOS 键盘切换问题 求急
4
EditText如何设置自动弹出的默认输入类型?
7
ios中键盘遮挡了输入框,在storyboard中怎么解决。
2
从键盘输入每小时登录网络的用户数到一个有24个整型元素的数组中。编程以如下格式显示一个报告
10
【C语言编写函数问题】从键盘输入一个字符串,编写程序完成 如下功能:
1
怎么令c#调用win8的软键盘直接打开数字?
6
从键盘输入一个数字(不限位数),用循环语句编程判断并输出这个数字的位数
3
java键盘输入的问题,求教啊~
2
从键盘输入一个字符如(“12345”只有0-9)用递归算法将字符串转换为数字,
3
C+语言从键盘输入3个整数,按照大小顺序从小到大输出,请问怎么写啊
2
Qt 中怎么判断连续按下了键盘的两个按键?
3
EditText怎样取消聚焦,让用户点击的时候才出现软键盘
1
用汇编语言将十进制数据转换成十六进制数。要求从键盘上输入一个十进制数,然后以十六进制数输出
2
输入法键盘弹出的原理
3
js控制手机键盘只限输入删除数字?