ANSI 兼容终端颜色控制

在终端使用

echo -e "\033[31m这些字会显示为红色"

在 C/C++ 使用

printf("\033[31m这些字会显示为红色");
std::cout << "\033[31m这些字会显示为红色" << std::endl;

颜色的控制通过 ESC 字符(\033)加 ”[“ 加颜色代码加 ”m” 实现,多个代码以分号分隔

ANSI 颜色代码:

字体颜色           背景颜色          颜色
------------------------------------------------
30                40              black   黑色
31                41              red     红色
32                42              green   绿色
33                43              yellow  黃色
34                44              blue    蓝色
35                45              magenta 紫红色
36                46              cyan    蓝绿色
37                47              white   白色

其他常用代码

代码  描述
-------------
0    清除所有
1    强调/高亮
4    下划线
7    反显

如要输出蓝底白字,则代码为 printf("\033[37;44m 这些字就是蓝底白字 \033[0m");

所有 ANSI 终端代码请参考《通过控制台输出各种颜色的字符》