用C语言Linux下打印带颜的字符串
字背景颜范围:40----47
40:黑
41:深红
42:绿
43:黄
44:蓝
45:紫
46:深绿
47:白
字颜:30-----------37
30:黑
31:红
32:绿
33:黄
34:蓝
35:紫
36:深绿
37:白
============ANSI控制码的说明 ===============
33[0m 关闭所有属性
33[1m 设置高亮度
33[4m 下划线
33[5m 闪烁
33[7m 反显
33[8m 消隐
33[30m -- 33[37m 设置前景
33[40m -- 33[47m 设置背景
33[nA 光标上移n行
33[nB 光标下移n行
33[nC 光标右移n行
33[nD 光标左移n行
33[y;xH设置光标位置
33[2J 清屏
33[K 清除从光标到行尾的内容
33[s 保存光标位置
33[u 恢复光标位置
33[?25l 隐藏光标
33[?25h 显示光标
基本格式:
一种控制:printf("\033[xm");
多种控制:printf("\033[x;y;zm");等价于printf("\033[xm\033[ym\033[zm ");
举个例子:
以红在终端上打印出“Hello, world”,对应的代码如下:
以红在终端上打印出“Hello, world”,对应的代码如下:
printf("\033[31m\033[1m"); // 开始以红高亮打印
printf("Hello, world\n");
printf("\033[0m");要恢复默认颜打印,只需要再打印如下一句:
也可以通过下面这段代码,看看实际效果:字符串是什么颜
int main() {
fprintf(stdout, "\033[31m\033[1m"); /* 设置开始 */
fprintf(stdout, "\033[31m\033[1m"); /* 设置开始 */
fprintf(stdout, "HEllo, world\n"); /* 用户打印 */
fprintf(stdout, "\033[0m"); /* 恢复默认值*/
return 0;
}
}
参考配:
#define NONE "\033[m"
#define RED "\033[0;32;31m"
#define LIGHT_RED "\033[1;31m"
#define GREEN "\033[0;32;32m"
#define LIGHT_GREEN "\033[1;32m"
#define BLUE "\033[0;32;34m"
#define LIGHT_BLUE "\033[1;34m"
#define DARY_GRAY "\033[1;30m"
#define CYAN "\033[0;36m"
#define LIGHT_CYAN "\033[1;36m"
#define PURPLE "\033[0;35m"
#define LIGHT_PURPLE "\033[1;35m"
#define BROWN "\033[0;33m"
#define YELLOW "\033[1;33m"
#define LIGHT_GRAY "\033[0;37m"
#define WHITE "\033[1;37m"
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论