c++ - 读取 std::string 行(支持空格和特殊键)

标签 c++ string std

我需要使用控制台从键盘将一行读入 std::string str。 现在我使用 std::getline(std::cin, str); 函数。

但此方法对箭头键和其他特殊键(退格键和回车键除外)无效。

我希望 C++ 已经对此有很好的解决方案(但我不能用谷歌搜索它),不是吗?

如果此解决方案支持“命令历史记录”(上/下箭头键用于上一个/下一个命令),那就完美了。

如果重要,我会使用 ubuntu 12.10。

最佳答案

我想您会想要使用 readline 库 ( http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html ),它有很多有用的功能,包括历史记录支持。

关于c++ - 读取 std::string 行(支持空格和特殊键),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21390071/

相关文章:

c++ - 编写 linux 守护进程的最佳方式

c++ - 添加和比较时签署约定

c++ - 函数复杂度分析

c++ - 如果父线程/主线程死亡,std::async 调用会发生什么

c++ - std::forward_list 和 std::forward_list::push_back

c++ - std::sort() C++ 不工作但它很简单,为什么 :( 一维数组

c++ - 不同计算机上的时钟时序变化

c++ - 在不使用字符串库中的任何内容的情况下将字符串值转换为 int

arrays - MATLAB cell2mat 唯一误差元胞数组

Android "scroll"TextView 中的文本