2011-09-24 103 views
7

所以我写了一个小程序,它接受用户的命令,然后显示输出(连接到服务器后)。这是一个多种交互式控制台。c/C++的交互式控制台编程?

但是,在使用mongodb和redis命令行客户端(它们在控制台/终端上交互工作)之后,似乎必须有某个库提供功能,例如记录用户输入,接受向上/向下按键浏览命令历史记录,以及制表符完成框架(不知道该如何工作,但是)。

什么是这种事情的理想库?

回答

10

readline库是共同的选择:http://www.gnu.org/s/readline

如果你是更有野心的ncurses给你更多的控制权,但有少开始功能和陡峭的学习曲线。

编辑: icktoofay提到readline是根据GPL授权的。如果这是您软件的问题,tecla是根据X11样式许可证授权的替代产品,因此它可用于专有项目。

+2

值得注意的是,readline具有GPL许可证。 – icktoofay

+6

@icktoofay:但是您可以使用editline,它是BSD许可的,并且具有与readline几乎相同的功能。 –

相关问题