我正在编写一个类似于 shell 的程序。启动后,会出现提示,您可以输入一些特定于应用程序的命令。
到目前为止,这工作得很好。但是,我想像在 Bash 中一样添加对命令历史记录的支持,以便用户可以点击向上或向下箭头并查看以前输入的命令。
我已经包含了 ncurses 库,并且我使用 getch() 做了一个简单的 hello world 测试,以确保正确报告向上和向下箭头。
困扰我的事情是,我调用 initscr() 似乎是一个要求,这将清除屏幕以便我使用 getch()。
好的,所以问题是:
有人知道不用先调用 initscr() 就可以使用 ncurses getch() 函数的方法吗?如果没有,我可以让它不清除屏幕吗?基本上,我希望 getch() 的行为与 getchar() 相同,如果这有意义的话。
提前致谢!
编辑:我认为最好的例子是 Python 如何在交互模式下运行。