C++ getch()获取方向键的ascii码问题
上下左右箭头产生的键值是双键值,具体数值与你的键盘设置有关。有可能是十进制22472--上22480--下22475--左22477--右编程序,用intkey=getc...
上下左右箭头 产生的键值是双键值,具体数值与你的键盘 设置 有关。
有可能 是 十进制
224 72 -- 上
224 80 -- 下
224 75 -- 左
224 77 -- 右
编程序,用
int key = getch(); 读 一个键值,如果 它等于 224, 则 再 读 一个键值 key2 = getch();
如果 key2 == 72 是 上箭头,else if (key2== 80) 是 下箭头;
else if (key2== 75) 是 左箭头;else if (key2== 77) 是 右箭头;
=========
关键语句:
int key, key2;
key = getch();
if (key==224) {
key2 = getch();
if (key2 == 72) 是 上箭头;
else if (key2== 80) 是 下箭头;
else if (key2== 75) 是 左箭头;
else if (key2== 77) 是 右箭头;
else {...};
}
关于这段东西,int key = getch(); 读 一个键值,如果是方向键的话读两次key key2,key值为224 那为什么只读一次key = getch() ,key的值就是80 72之类的呢 展开
有可能 是 十进制
224 72 -- 上
224 80 -- 下
224 75 -- 左
224 77 -- 右
编程序,用
int key = getch(); 读 一个键值,如果 它等于 224, 则 再 读 一个键值 key2 = getch();
如果 key2 == 72 是 上箭头,else if (key2== 80) 是 下箭头;
else if (key2== 75) 是 左箭头;else if (key2== 77) 是 右箭头;
=========
关键语句:
int key, key2;
key = getch();
if (key==224) {
key2 = getch();
if (key2 == 72) 是 上箭头;
else if (key2== 80) 是 下箭头;
else if (key2== 75) 是 左箭头;
else if (key2== 77) 是 右箭头;
else {...};
}
关于这段东西,int key = getch(); 读 一个键值,如果是方向键的话读两次key key2,key值为224 那为什么只读一次key = getch() ,key的值就是80 72之类的呢 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询