当前位置: 代码迷 >> C语言 >> 关于键盘的工作  请高手不吝赐教!!!
  详细解决方案

关于键盘的工作  请高手不吝赐教!!!

热度:293   发布时间:2005-05-05 21:48:00.0
关于键盘的工作  请高手不吝赐教!!!
不好意思  俺是菜鸟   有问题请教大侠们:::::怎么方向键的ASC码都是224?如果我想用getch()判定键盘方向键的按下与否,如果用扫描码(我试过可以)不是和四个大写字母重了? 

扫描码到底和ASC有什么区别联系?

而且为什么按下方向键会getch()到两个值?好奇怪?

大侠莫说我懒  其实我查了半天资料  头都大了  才来请教的  大侠一定要帮忙啊! 关于键盘的工作原理?我查了下 发现键盘的ASC码 扫描码 还有一个四位的16进制的码类似于4f31都是什么含义?谢了先!!还有个代码是什么码?感激不尽!
搜索更多相关的解决方案: 键盘  不吝  

----------------解决方案--------------------------------------------------------

对,这样说吧,getch()接受一个char,而实际上特殊键产生一个int值,所以,getch()将两次被调用 用如下程式: main() { char c;

while((c=getch())!='\r') { printf("%d %c\n",c,c); } } 你可以看到,当一个ASCII字符被激发时,只打出其值和字符。但是,当一个特殊键被激发时,首先打一0值及0值的字符(不可见),再打一个其它的相关值及字符。 当一个特殊键被激发时,产生一个int值,其高位为相关的扩允码,底位为0,(注意:int的高底位在内存中的实际排列)。


----------------解决方案--------------------------------------------------------