获取键盘上各键的16进制码

    技术2022-05-20  37

           当我们编程有时需要用到键盘的16进制码时,可以编写一个小的程序去获取.以下的程序可供参考:

    #include<stdio.h>#include<bios.h>#include<conio.h>

    int main(void){    int ch;    ch = bioskey(0);    printf("ESC   0x011b/n");

       

        while (ch != 0x011b)    /*当按键不为ESC时执行循环*/    {         printf("0x%x/n",ch);         ch = bioskey(0);    }

        clrscr();    return 0;}

    以上可以得到除ESC键外的16进制码,对于ESC键的码值也很容易:

    #include<stdio.h>

    #include<bios.h>

    int main(void)

    {

        int ch;

        ch = bioskey(0);

        printf("0x%x",ch);

       

        return 0;

    }

    说明:

    函数bioskey()的原型为:int bioskey(int cmd);它在bios.h头文件中作了说明。

    当cmd为0时,bioskey()返回按键的键值,该值是2个字节的整型数。若没有键按下,则该函数一直等待,直到有键按下。当按下时,若返回值的低8位为非零,则表示为普通键,其值代表该键的ASCII码。若返回值的返回低8位为0,则高8位表示为扩展的ASCII码,表示按下的是特殊功能键。


    最新回复(0)