控制台输入中的基于箭头的命令历史记录(C ++)

时间:2011-06-14 20:55:07

标签: c++ ncurses

我正在尝试构建一个接受用户输入的控制台应用程序。我能够使用printf将光标保持在同一个地方,我也可以使用curses,但是我无法启动向上箭头命令历史记录。有什么指针吗?

5 个答案:

答案 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