在C中随时访问任何密钥

时间:2013-10-24 14:57:59

标签: c

如何设置一个可以随时访问任何功能的键,例如我在这里有一个简单的代码,无论何时我正在工作或在程序中我都可以使用ESC键退出而不是在所有这些之后选择它线条,使它像快捷键......

#include <stdio.h>
#include <conio.h>
#include <process.h>
void main(){
int a,b,c,opt;
START:
clrscr();
printf("Enter Num A: ");
scanf("%d",&a);
printf("Enter Num B: ");
scanf("%d",&b);
printf("Enter Num C: ");
scanf("%d",&c);
printf("Do it Again? ESC to Exit");
opt=getch();
if(opt==27) exit(0);
else goto START;
}

编辑: 是否有任何技术来命令它像

while(inp!=27)
do{
...
}

这样代码就会运行,例如,如果我随时按ESC键会退出吗?

1 个答案:

答案 0 :(得分:2)

这取决于您正在使用的平台。在Windows上(作为示例),您需要为键盘事件消息添加处理程序。然后,当该消息发送到您的窗口时,您将拥有执行关闭的代码。

许多开发平台通过将消息隐藏在事件模型后面来使您更容易。

在Windows之前,您需要挂钩中断堆栈(使用名为“TSR”的命令终止并保持驻留)键盘驱动程序。然后,当调用键盘事件时,您的代码可以运行。