问题标签 [getch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
454 浏览

java - 相当于 Android 的 getch()

在 Android 或 Java 中是否有 C 的 getch() 等价物?我希望执行停止,直到用户执行某些操作,例如点击屏幕或按下音量控制或任何可用的硬件按钮之一。另一种选择是显示一个模态消息框窗口,它不会让程序继续运行,直到用户按下 OK。是否可以在 Android 中以简单的方式做到这一点?在 android 中获得与 getch() 函数等效的最简单方法是什么?

我也需要能够在线程中使用它

0 投票
8 回答
1551 浏览

c++ - getch() 没有响应停止循环

假设 ncurses 标头在那里并且我的random_number_generator()方法有效。我试图通过点击“a”退出循环(最终我想通过点击退出CtrlE)。

我的代码继续按预期每秒打印随机数。如果满足任一条件,我希望它退出:

  1. 如果随机数是除数的倍数,它将退出。

  2. 如果我使用它将退出getch()。我认为这应该可以,但是当我点击它时它并没有退出a

    /li>

编辑:

我尝试将条件更改为 && 但 getch 仍然不让它退出:

随机数输出范围 1-10:

0 投票
1 回答
763 浏览

c++ - PDCurses getch 不起作用

我正在使用 CodeBlocks 并且刚刚开始使用 PDCurses。我只是在尝试一些东西,我遇到了这个问题。

getch() 不起作用。它不会等待输入,它会直接打印。它只是输出“按下的键是-1”。

0 投票
4 回答
103 浏览

c - C程序,scanf换一个char,然后转载呢?

当我运行它时,我得到: 12:2 警告:格式 '%c' 需要一个匹配的 'int' 参数 [-Wformat]

我需要改变什么?我知道一切都是系统正确的,我只需要使用其他东西,我找不到任何专门解决我问题的东西!

多谢你们。

0 投票
1 回答
137 浏览

c - 在不按 Enter C 的情况下捕获 EOF 击键

我正在编写一个程序,它有一个主菜单,有几个功能,我允许用户通过为一个菜单选择输入一个数字来访问这些功能。为此,我正在使用 _getch()。当用户输入 EOF 键时,我需要能够退出程序,但 _getch() 实际上并没有捕捉到 EOF 击键。我知道我可以通过使用 getchar() 而不是 _getch() 来让它工作,但我不希望用户在每次选择函数后都被迫按 enter。

有没有办法让 _getch() 捕获 EOF?这适用于 Windows,如果它很重要,任何帮助都非常感谢,因为我在那里找不到任何东西。

0 投票
2 回答
148 浏览

c - C - 简单 3 路比较的 Noob 错误

为愚蠢的问题道歉,我有点初学者,无法理解为什么以下代码无法正常工作。

我想要这个简单的程序做的就是使用getch()(是的,我需要使用getch())获取 A、B 或 C,并使用我的while循环来确认该条目实际上是 A、B 或 C。但是,我运行程序,即使我输入了 A、B 或 C,程序也会告诉我我的输入无效。有人可以在这里帮助我并告诉我我做错了什么吗?

我觉得这与它以 ASCII 整数形式读取字符有关,但我真的不知道如何解决这个问题。

0 投票
1 回答
3482 浏览

c - x86 程序集从 32 位寄存器中获取一个字节

我是 x86 汇编语言的 programmig,我发现了一个问题。我调用 C 函数getch从标准输入获取单个字符。但问题是返回值存储在寄存器 EAX 中。我想知道,如何获得一个角色。不是 4 字节值。谢谢。

0 投票
3 回答
7151 浏览

c++ - 诅咒库:为什么 getch() 清除我的屏幕?

我正在尝试使用 C++ 学习 curses 库(pdcurses,因为我在 Windows 操作系统中)。我有一个显示 3 个窗口的程序,然后是一个 while 循环,根据 getch() 捕获的按键进行一些处理。按下 F1 键时退出循环。

然而,尽管使用 wrefresh() 刷新了所有三个窗口,但在我输入第一次按键之前什么都没有出现。没有while循环,一切都显示得很好。我做了很多测试,就像第一次调用 getch() 会完全清除屏幕,但不是后续的。

我的问题是:我错过了什么?起初,我在想也许 getch() 正在调用一个隐式 refresh(),但是为什么随后对它的调用没有相同的行为呢?

非常感谢您的帮助。

这是代码。

0 投票
2 回答
623 浏览

c++ - 在Linux上使用C中的输入函数,无需按Enter

我在 windows 上写了一个代码,使用getch()来自stdio. 问题是我必须使用不需要按 Enter 的输入功能。

我的代码在 Windows 上编译并完美运行。但是,这个任务必须在 linux 上运行,当我尝试这样做时,它告诉我它无法识别getch()(或_getch())。问题是,根据分配,我不能使用其他包含但是stdio.h(添加标志也是如此),所以我不能curses.h用来解决这个问题。

我也不能用termios.h之类的,我们没学过。我该如何解决这个问题?还有其他选择吗?

谢谢

0 投票
1 回答
483 浏览

c++ - c++ tron Player lightcycle 单向移动

我试图让玩家 lightcycle 继续向一个方向移动而不会停止,直到玩家按下按钮将其移动到另一个方向。我不确定如何使用 kbhit 做到这一点,所以请给我一些建议!谢谢。