我需要使用控制台从键盘将一行读入 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/