嗯,这个问题可能听起来有点过于模糊,但这里有两件我需要做的事情,我肯定需要一些意见:
使用颜色 输出内容(例如使用cout
)(注意:我的TERM
环境变量设置为xterm-color
有所不同;另外,是否有任何统一的方法输出彩色文本,通常与纯mac和* nix终端兼容,以便代码可移植)
在终端屏幕上的相同位置输出内容。好的,这听起来可能也很混乱。我们来看一个只输出进度百分比的终端应用程序。它通常不会为此开始新的一行。新值显示在同一位置。这怎么可行? (作为一个曾经很好的DOS时代的Borland Pascal人,我唯一想到的就是直接访问视频内存......或者不是吗?)
所以...任何想法?
答案 0 :(得分:4)
您可能想要使用ncurses库。 ANSI escape codes也可用于着色。
答案 1 :(得分:2)
1)
您可以尝试使用Color cout,但这不是很有意义。我试过(ANSI转义码)类似
cout << "\033[1;31mbold red text\033[0m\n";
cout << "\33[0;31m" << "Enter Your String here" << "\33[0m" << std::endl ;
你也可以看看 How do I output coloured text to a Linux terminal?
2)
您是否正在寻找像手表这样的应用程序,它们会在同一位置显示输出。