c++ 无需按回车键即可立即充值的功能

kx7yvsdv  于 2023-02-01  发布在  其他
关注(0)|答案(1)|浏览(196)

我是编程新手,我试着用C++编写菜单。
我希望它在while循环中,当按ESC键时中断,但我希望无需按Enter键即可立即读取字符。

while (breaker != 27)
{
    //menu based on switch(breaker)
}

我找到了getch()函数和<conio.h>头文件,但人们说不要使用它,因为它只在Windows上工作。
有没有其他方法,我可以得到一个字符,而不按回车,它的多平台/符合编码道德?
我的操作系统是Windows 11,但我想知道在其他系统上工作的解决方案。

wfsdck30

wfsdck301#

通常不可能使用ISO C++标准库提供的函数来检测是否按下了ESC键。但是,大多数平台提供了特定于平台的API,该API确实提供了此功能。
在Microsoft Windows上,可以使用函数_getch_getcheReadConsoleInput
在Linux上,您可以使用ncurses library

相关问题