21xrx.com
2024-11-08 22:31:50 Friday
登录
文章检索 我的文章 写文章
C++设置文字颜色
2023-07-05 02:31:21 深夜i     --     --
C++ 设置 文字颜色

在C++中,如果需要输出彩色的文本内容,可以使用Windows API或者ANSI转义序列来实现。以下是两种方法的示例。

1. 使用Windows API

在Windows系统中,可以使用`SetConsoleTextAttribute()`函数来设置控制台输出的文本颜色。该函数可以设置文本颜色和背景颜色。具体的颜色值可以查阅Windows API文档。

示例代码如下:


#include <iostream>

#include <Windows.h>

using namespace std;

int main()

{

 HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);

 SetConsoleTextAttribute(hConsole, FOREGROUND_GREEN | FOREGROUND_INTENSITY);

 cout << "Hello, World!" << endl;

 return 0;

}

上述代码将输出“Hello, World!”并将其文本颜色设置为绿色。

2. 使用ANSI转义序列

在Linux系统中,可以使用ANSI转义序列来设置终端输出的文本颜色。ANSI转义序列由一个ESC字符(ASCII码为27)和后面跟着的一些字符组成。

下面是一些ANSI转义序列的示例:

- 重置所有属性:\033[0m

- 设置前景色为红色:\033[31m

- 设置前景色为绿色:\033[32m

- 设置前景色为黄色:\033[33m

- 设置前景色为蓝色:\033[34m

- 设置前景色为洋红色:\033[35m

- 设置前景色为青色:\033[36m

- 设置前景色为白色:\033[37m

示例代码如下:


#include <iostream>

using namespace std;

int main()

{

 cout << "\033[32mHello, World!\033[0m" << endl;

 return 0;

}

上述代码将输出“Hello, World!”并将其文本颜色设置为绿色。

总结

以上两种方法都可以实现输出彩色文本的效果,但是它们的适用范围不同。Windows API适用于Windows操作系统,ANSI转义序列适用于Linux和Unix系统。在实际开发中,要根据不同的系统环境选择适合的方法。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复