⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 afive301.c

📁 141个C语言经典小程序
💻 C
字号:
/****************************************************************/
/*bioskey函数                                                   */
/*函数原型: int bioskey(int cmd);                               */
/*函数功能:                                                     */
/*    利用函数bioskey可以实现三种功能,参数cmd为要实现的功能号,*/
/*值只能为0、1、2,具体含义如下:                               */
/*    0:在系统中有一个按键队列,所有的键盘按键都在这里排成队。该*/
/*功能就是如果按键队列中有按键,那么读取队列首位的按键,并返回按*/
/*键值;否则等待键盘按键出现。( 其中按键值的高字节为扫描码,低字*/
/*节为ASCII码)                                                  */
/*    1:如果按键队列中没有按键,那么返回零,否则返回非零。      */
/*    2:返回特殊按键Shift、Ctrl、Alt等键的按键状态。            */
/****************************************************************/
/*bioskey例程*/
#include <stdio.h>
#include <bios.h>
#include <ctype.h>

#define RIGHT  0x01
#define LEFT   0x02
#define CTRL   0x04
#define ALT    0x08

int main(void)
{
   int key, modifiers;

   /* 1号功能返回零,除非按下了一个键*/
   while (bioskey(1) == 0);

   /* 0号功能返回等待中按下的键*/
   key = bioskey(0);

   /* 2号功能用于判断特殊键是否被按下*/
   modifiers = bioskey(2);
   if (modifiers)
   {
      printf("[");
      if (modifiers & RIGHT) printf("RIGHT");
      if (modifiers & LEFT)  printf("LEFT");
      if (modifiers & CTRL)  printf("CTRL");
      if (modifiers & ALT)   printf("ALT");
      printf("]");
   }
   /* print out the character read */
   /* 打印出读进来的字符 */
   if (isalnum(key & 0xFF))
      printf("'%c'\n", key);
   else
      printf("%#02x\n", key);
   return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -