c - OS X 上的箭头键

标签 c input console getch

我正在尝试为控制台制作一个小游戏,因此我需要检查按下了哪个箭头键。在互联网上找不到任何有用的东西。

到目前为止我尝试过这个:

printf("%i", getch());

但是 getch() 总是返回 27,无论我按下哪个箭头。

有什么想法吗?

最佳答案

箭头键在内部由字符 ESCAPE +“[”+一个字母表示。取决于它是哪个箭头键:“A”代表向上,“B”代表向下,“C”代表向右,“D”代表向左。

而 ESCAPE 是#27。因此,可能发生的情况是,按下箭头时会得到三个字符,而不仅仅是一个。你会得到 27(转义)、91“[”,然后是 65-68 范围内的某个值(“A”-“D”)。

关于c - OS X 上的箭头键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9955006/

相关文章:

c - 在 c 中使用多个管道

java - JSP 表单处理

linux - 对目录中的文件使用 rm

ios - 如何将 [UInt8] 数组复制到 Swift 3 中的 C 指针?

c - ShowWindow() 是否发送 WM_SIZE 消息?

c++ - 从文件中输入两个单词的字符串(C++)

windows - 在 Windows 上的 IEx(交互式 Elixir 控制台)中启用 UTF8 字符

javascript - Vanilla JavaScript 代码在控制台中运行,但不能在 (greasemonkey) 脚本中运行

C 输出模糊度

Python 是/否用户输入