在UNIX字符界面下显示有8种不一样颜色,printf打印基本格式以下:函数
printf("\x1b[%d;%dm%s\x1b[%dm", backcolor, frountcolor, str, control);字体
分别的表示以下:字符串
第一个%d:backcolor表示显示字符串的背景颜色,其值以下表所示:基础
第二个%d:frountcolor表示字体颜色,其值以下表所示:方法
QUOTE:
字背景颜色范围: 40--49 字颜色: 30--39
40: 黑 30: 黑
41: 红 31: 红
42: 绿 32: 绿
43: 黄 33: 黄
44: 蓝 34: 蓝
45: 紫 35: 紫
46: 深绿 36: 深绿
47: 白色 37: 白色 co
第三个%s:str 表示须要显示的字符串单例
第四个%d:control表示ANSI控制码,其值以下表所示:字符
ANSI控制码:return
QUOTE:
\x1b[0m 关闭全部属性
\x1b[1m 设置高亮度
\x1b[4m 下划线
\x1b[5m 闪烁
\x1b[7m 反显
\x1b[8m 消隐
\x1b[30m -- \x1b[37m 设置前景色
\x1b[40m -- \x1b[47m 设置背景色
\x1b[nA 光标上移n行
\x1b[nB 光标下移n行
\x1b[nC 光标右移n行
\x1b[nD 光标左移n行
\x1b[y;xH 设置光标位置
\x1b[2J 清屏
\x1b[K 清除从光标到行尾的内容
\x1b[s 保存光标位置
\x1b[u 恢复光标位置
\x1b[?25l 隐藏光标
\x1b[?25h 显示光标界面
例子:
int main()
{
int i, j;
for(i=40; i<48; i++)
for(j=30; j<38; j++)
{
printf("\x1b[%d;%dmhello world\n\x1b[0m",i, j);
}
return 0;
}
这是一个简单例子,能够在此基础上修改。须要说明的是若是在SecureCRT上显示的话,须要将ANSI开启。
除了用printf函数打印以外,还能够用echo输出。这里不作说明,方法同样。