2011-09-24 30 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幾乎相同的功能。 –

相關問題