我想用 C/C++ 创建一个具有以下功能的 CLI 程序:当用户按下组合键时,我希望能够执行某种操作,而无需等待按下“enter”键。就像bash中的
ctrl+r
进入反向搜索模式一样。如果可能的话,我想尽可能坚持使用标准库,如果我必须依赖于平台,我想采用 POSIX 方式(我正在使用 Linux 或 macOS)。
bash 终端使用curses 库,您也可以在cli 程序中使用它。
您可以使用 getch() 函数从键盘获取字符。
如果您未设置延迟模式,那么它不会等待换行符,并且应立即返回一个字符。
并且如果您启用无回显,那么它也不会将字符打印到屏幕上。
对这个问题的回答还提供了一个简洁的 getch 函数小示例。