返回信息流小学期。。。
我现在是用_kbhit()配合_getch()来读按键的,不知道有没有更优化的方法?可以同时读两个键?
这是一条镜像帖。来源:北邮人论坛 / cpp / #43336同步于 2010/9/6
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
控制台程序:能不能两个键一起按/组合键
jack2684
2010/9/6镜像同步6 回复
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
按了组合键(比如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;
}
哈哈,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;
}
大牛啊!膜拜ing..........
【 在 kmplayer 的大作中提到: 】
: 哈哈,wks也会犯错.
: #include <stdio.h>
: #include <conio.h>
: ...................
这里面 char b c是干嘛的?
【 在 kmplayer (就是喜欢她) 的大作中提到: 】
: 哈哈,wks也会犯错.
: #include <stdio.h>
: #include <conio.h>
: ...................
没用。
本来想这样:
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也会犯错.
: ...................