首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

c语言获取键盘内容,并以ASCII格式输出有关问题

2012-06-19 
c语言获取键盘内容,并以ASCII格式输出问题我在网上找到的代码,除了辅助键shift,alt,ctrl,capslock,esc不能

c语言获取键盘内容,并以ASCII格式输出问题
我在网上找到的代码,除了辅助键shift,alt,ctrl,capslock,esc不能获取,其他都能获取,只是有些键会输出两部分ascii码,这些两部分的ASCII码都代表啥?

C/C++ code
#include <stdio.h>void main(){    while(1)    {    char a;    a=getch();    printf("//%x---\n",a);    }}


现在要达到的要求是正确识别键盘ASCII值,正确输出。求高人指点。

[解决办法]
C/C++ code
//The _getch function reads a single character from the console without echoing.//Function can not be used to read CTRL+Break.//When reading a function key or an arrow key,//_getch must be called twice; the first call returns 0 or 0xE0,//and the second call returns the actual key code.#include <conio.h>#include <windows.h>void main() {    unsigned short k;    while (1) {        Sleep(100);        k=getch();        if (27==k) break;//按Esc键退出        if (0==k||0xe0==k) k|=getch()<<8;//非字符键        cprintf("%04x pressed.\r\n",k);    }} 

热点排行