Portable text based console manipulator(便携式基于文本的控制台操纵器)
问题描述
应用程序可以操作基于文本的控制台或终端,并更改它们的颜色、设置光标位置.支持的方法是:
Applications can manipulate text based consoles or terminals, and change their colors, set cursor position. The supported approaches are:
- 对于类 Unix 系统: 有
ANSI 转义码. - 对于 Windows 系统:有像
SetConsoleTextAttribute. - ...
但是,是否有任何轻量级和可移植的 C/C++ 库可以处理操作系统之间的差异,仅针对颜色和光标?并且如果技术上不可能但尽最大努力什么都不做.
but, is there any lightweight and portable C/C++ library which handles differences between operating systems just for colors and cursor? and do nothing if it was technically impossible but best effort.
注意:我不是在寻找大量的外部工具来模拟类 Unix 终端(如 Cygwin、Msys-rxvt 等).我认为使用 Windows API 和 ANSI 转义码可以实现简单的可移植性. 而不是 ncurses,因为它很重,并且有很多功能可以完全控制控制台,我认为它需要模拟.>
推荐答案
好吧,我终于找到了一个可移植且易于使用的库:rlutil.h
Alright, i finally found a portable and easy to use library: rlutil.h
用法:
#include <iostream>
#include "rlutil.h"
int main()
{
for (int i = 0; i < 16; i++)
{
rlutil::setColor(i);
std::cout << i << " ";
}
std::cout << std::endl;
return 0;
}
但是,我很乐意提供其他建议.
这篇关于便携式基于文本的控制台操纵器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:便携式基于文本的控制台操纵器
基础教程推荐
- 如何通过C程序打开命令提示符Cmd 2022-12-09
- 在 C++ 中计算滚动/移动平均值 2021-01-01
- 如何检查GTK+3.0中的小部件类型? 2022-11-30
- 这个宏可以转换成函数吗? 2022-01-01
- 静态库、静态链接动态库和动态链接动态库的 .lib 文件里面是什么? 2021-01-01
- 如何将 std::pair 的排序 std::list 转换为 std::map 2022-01-01
- 我有静态或动态 boost 库吗? 2021-01-01
- 常量变量在标题中不起作用 2021-01-01
- 如何在 C++ 中初始化静态常量成员? 2022-01-01
- C++结构和函数声明。为什么它不能编译? 2022-11-07
