终端字符的颜色是用转义序列进行控制,是文本模式下的系统显示功能,和具体的语言无关。转义序列是以 ESC 开头,可以用 \033 完成相同的工作(ESC 的 ASCII 码用十进制表示就是 27, = 用八进制表示的 33)。
格式
1 | \033[显示方式;前景色;背景色m |
1) 显示方式:0(默认值)、1(高亮)、22(非粗体)、4(下划线)、24(非下划线)、5(闪烁)、25(非闪烁)、7(反显)、27(非反显)
2) 前景色:30(黑色)、31(红色)、32(绿色)、 33(黄色)、34(蓝色)、35(洋红)、36(青色)、37(白色)
3) 背景色:40(黑色)、41(红色)、42(绿色)、 43(黄色)、44(蓝色)、45(洋红)、46(青色)、47(白色)
例子
1)默认颜色:\033[0m,也是关闭所有属性
2)绿色:\033[1;32;40m
3)红色:\033[1;31;40m
4)printf( “\033[1;31;40m 输出红色字符 \033[0m” )