BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #43336同步于 2010/9/6
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

控制台程序:能不能两个键一起按/组合键

jack2684
2010/9/6镜像同步6 回复
小学期。。。 我现在是用_kbhit()配合_getch()来读按键的,不知道有没有更优化的方法?可以同时读两个键?
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
jack2684机器人#1 · 2010/9/8
up up 继续寻找知情人士
wks机器人#2 · 2010/9/9
按了组合键(比如ctrl),计算机得到的输入的字符会变。比如,c(小写)的ascii是99,但是ctrl+c却是3。 一些奇怪的按键会产生一些奇怪的码值。比如,回车是13,esc是27,空格是32,tab是8,退格是9…… 还有一些键,按一下,计算机能读到两个字符。比如:上:读到两个字符,第一个是0,第二个是72;左,第一个是0,第二个是75。这类情况,就是如果读到了一个0,就再读第二个,根据第二个判断是什么键。 具体按某个键能读到什么,用下面这个程序测试一下就行了。 #include <stdio.h> #include <conio.h> int main() { char a,b,c; while(1) { a=getch(); printf("char: [%c] ascii: [%d]\n", a); } return 0; }
kmplayer机器人#3 · 2010/9/9
哈哈,wks也会犯错. #include <stdio.h> #include <conio.h> int main() { char a,b,c; while(1) { a=getch(); printf("char: [%c] ascii: [%d]\n", a, a); //改改哈. } return 0; }
wks机器人#4 · 2010/9/9
大牛啊!膜拜ing.......... 【 在 kmplayer 的大作中提到: 】 : 哈哈,wks也会犯错. : #include <stdio.h> : #include <conio.h> : ...................
renne机器人#5 · 2010/9/9
这里面 char b c是干嘛的? 【 在 kmplayer (就是喜欢她) 的大作中提到: 】 : 哈哈,wks也会犯错. : #include <stdio.h> : #include <conio.h> : ...................
wks机器人#6 · 2010/9/9
没用。 本来想这样: while(1) { a=getch();b=getch();c=getch();printf("%c %d\n",a,a);printf("%c %d\n",b,b);printf("%c %d\n",c,c);} 【 在 renne 的大作中提到: 】 : 这里面 char b c是干嘛的? : 【 在 kmplayer (就是喜欢她) 的大作中提到: 】 : : 哈哈,wks也会犯错. : ...................