c语言编程 按f7键怎么实现程序响应,要实例。 10
1个回答
展开全部
#include <stdio.h>
#include <conio.h>
int main() {
int ch;
while(1) { // <Ctrl> + <BREAK>退出程序
ch = _getch();
if(ch == 0) {
ch = _getch();
printf("F%d\n",ch - 58);
}
else if(ch == 0XE0) {
ch = _getch();
switch(ch) {
case 71 : printf("HOME\n"); break;
case 72 : printf("↑\n"); break;
case 73 : printf("PgUp\n"); break;
case 75 : printf("←\n"); break;
case 77 : printf("→\n"); break;
case 79 : printf("END\n"); break;
case 80 : printf("↓\n"); break;
case 81 : printf("PgDn\n"); break;
case 82 : printf("INSERT\n"); break;
case 83 : printf("DELETE\n"); break;
default : break;
}
}
else if(ch == 0X1B) printf("ESC\n");
else if(ch >= 1 && ch <= 26) {
switch(ch) {
case 8 : printf("<Ctrl> + 'h' or <BACKSPACE>\n"); break;
case 9 : printf("<Ctrl> + 'i' or <TAB>\n"); break;
case 13 : printf("<Ctrl> + 'm' or <ENTER>\n"); break;
default : printf("<Ctrl> + '%c'\n",ch - 1 + 'a'); break;
}
}
else printf("%3d : \'%c\'\n",ch,ch);
}
return 0;
}
追问
ch == 0 , ch == 0XE0 什么意思?
f1~f9没有对应ASII码,ch - 58怎么得来的?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询