如何解决C ++更改文字颜色
我正在尝试更改c ++中文本的颜色,我能找到的唯一答案是C语言而不是C ++语言。我尝试使用conio.h,但不知道如何使用它。有人可以帮忙吗?
解决方法
在C ++方面,文本着色并不是真的。在某些Unix终端中,您可以直接在程序中直接使用\e[0;31m message \e[0m
之类的代码(尽管您可能希望创建一个API以便于使用)。但是,这在Windows控制台中不起作用。这取决于所使用的操作系统和终端。
如果您不需要坚持使用非跨平台库conio.h
。我建议使用跨平台解决方案:仅标头,moderc C ++ rang
库。我在大多数项目中都使用过它,真的很容易使用
我发现了如何使用windows.h更改文本的颜色。这是我使用的代码示例(从https://cboard.cprogramming.com/复制)。
#include <iostream>
#include <windows.h>
using namespace std;
int main()
{
HANDLE h = GetStdHandle(STD_OUTPUT_HANDLE); // h is your link to the console
SetConsoleTextAttribute(h,1); cout << "Sentence in blue" << '\n'; // 1 happens to be blue
SetConsoleTextAttribute(h,2); cout << "Sentence in green" << '\n'; // 2 is green
SetConsoleTextAttribute(h,4); cout << "Sentence in red" << '\n'; // 4 is red
SetConsoleTextAttribute(h,7); cout << "Sentence in white" << '\n'; // etc.
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。