我正在尝试构建一个接受用户输入的控制台应用程序。我能够使用printf将光标保持在同一个地方,我也可以使用curses,但是我无法启动向上箭头命令历史记录。有什么指针吗?
答案 0 :(得分:5)
我认为您需要readline(www.gnu.org/software/readline/,现在似乎已重定向到http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html的维护者网站)
答案 1 :(得分:3)
除了readline库的提及之外,我还会提到BSD许可的editline
库和rlwrap
命令行包装工具,该工具运行任何具有基于readline的历史记录的程序
答案 2 :(得分:1)
只要GNU许可证不是您的问题,我会强烈考虑GNU Readline
答案 3 :(得分:0)
查看GNU Readline库。它可以提供输入历史记录支持。
答案 4 :(得分:0)
在Windows中,标准控制台窗口提供向上箭头输入历史记录 - 您无需执行任何操作。对于其他标准Windows控制台服务,请参阅doskey
命令quickhelp,并简单地将“command”替换为“输入行”。这有点误导,是的。
编辑,补充说:可能你正在做一些规避标准服务的事情。我只是注意到浏览器窗口标题显示“ncurses”,这不在您当前的问题标题中。也许就是这样,但在那种情况下,请专门询问有关ncurses的帮助。
对于* nix,请参阅其他答案。
干杯&第h