从键盘上输入上下左右,c语言怎样用程序识别呢??

intmov(void){fflush(stdin);//清除缓存数据charkey;key=getch();inttf=1;if(key==72)tf=movup();... int mov(void)
{
fflush(stdin); //清除缓存数据
char key;
key = getch();

int tf = 1;

if (key == 72)
tf = movup();
else if (key == 80)
tf = movdow();
else if (key == 75)
tf = movlif();
else if (key == 77)
tf = movri();
这里有一个代码,,他写的是key==72什么的,,我运行时候72就是向上,80就是向下,,可是72和80的ascll码不是向上和向下呀
展开
 我来答
tangshan057
推荐于2017-09-06
知道答主
回答量:10
采纳率:0%
帮助的人:3.3万
展开全部
用百度查一下"键盘扫描码",有解释,这里几句话说不清。它是一个16位码,分高8位和低8位,而getch()一次只能接收1个8位。向上的光标键的扫描码是0x48e0,H的扫描码是0x0048,在getch()的接收状态,如果输入H则接收到48,如果敲向上的光标键则收到e0,需要再次执行getch()才能读到48
cupid8505
2014-11-27 · 超过10用户采纳过TA的回答
知道答主
回答量:57
采纳率:0%
帮助的人:12.8万
展开全部
我这样说,不知道你能理解不, 例如数字1, 中文发音是yi, 而英文发音是wan.
而72呢在ascii中,表示的是H, 而在键盘编码中, 可能表示的就是向上。
追问
意思是72不是ascll码??如果要判断输入的一个字符等于ascll码72,怎么写代码呢??大神,,谢谢你的回答,,我会采纳的,
追答
判断一个字符的ascii码为72, 可以写成:if( ch == 'H')   //to do
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
HipHop夜半天使
2014-11-27 · TA获得超过813个赞
知道小有建树答主
回答量:672
采纳率:0%
帮助的人:471万
展开全部
对于上下左右箭头来说 getch获取的不是ascii码 而是键值对应
追问
意思是72不是ascll码??如果要判断输入的一个字符等于ascll码72,怎么写代码呢??大神,,谢谢你的回答,,我会采纳的,
追答
别人都被采纳了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式