详解c语言键盘输入联系小程序

1 如何检测键盘输入?

cpp 复制代码
#include<stdio.h>
#include<conio.h>

int main()
{
	int kb1 ,kb2;
    while(1){

        kb1 = getch();

        if(kb1==224){
            kb2 = getch();
            switch(kb2){
                case 72:
                    printf("up \n");
                    break;
                case 80:
                    printf("down \n");
                    break;
                case 75:
                    printf("left \n");
                    break;
                case 77 : 
                    printf("right \n");
                    break;
                default:
                    printf("其他情况!\n");
                    break;
            }
        }
        else{
            printf("其他情况!");
            printf("按下的键盘是: %d  =%c \n",kb1,kb1);
        }
        if(kb1 == 27){
            printf("esc 按下了 \n");
        }
    
    }
}

效果:

可以注意到的是右边的小键盘,按下了numsLock和不按下去结果是不一样的

2 为什么?

相关推荐
阿珊和她的猫2 小时前
v-scale-scree: 根据屏幕尺寸缩放内容
开发语言·前端·javascript
fouryears_234174 小时前
Flutter InheritedWidget 详解:从生命周期到数据流动的完整解析
开发语言·flutter·客户端·dart
我好喜欢你~5 小时前
C#---StopWatch类
开发语言·c#
lifallen6 小时前
Java Stream sort算子实现:SortedOps
java·开发语言
IT毕设实战小研6 小时前
基于Spring Boot 4s店车辆管理系统 租车管理系统 停车位管理系统 智慧车辆管理系统
java·开发语言·spring boot·后端·spring·毕业设计·课程设计
cui__OaO8 小时前
Linux软件编程--线程
linux·开发语言·线程·互斥锁·死锁·信号量·嵌入式学习
鱼鱼说测试8 小时前
Jenkins+Python自动化持续集成详细教程
开发语言·servlet·php
艾莉丝努力练剑9 小时前
【洛谷刷题】用C语言和C++做一些入门题,练习洛谷IDE模式:分支机构(一)
c语言·开发语言·数据结构·c++·学习·算法
CHEN5_029 小时前
【Java基础面试题】Java基础概念
java·开发语言
Cx330❀10 小时前
【数据结构初阶】--排序(五):计数排序,排序算法复杂度对比和稳定性分析
c语言·数据结构·经验分享·笔记·算法·排序算法