printf有趣的\033
1
2
3
4
5
|
int
main
(
int
argc
,
char
*
*
argv
)
{
printf
(
"\033[44;37;5m hello world\033[0m\n"
)
;
return
0
;
}
|
代码分析
实例:printf(“\033[1;33m Hello World. \033[0m \n”);
\033 [1; 33m xxxx
| | | |
开始 背景色 字体色 字符串
该段代码编译运行后显示的是蓝色背景,白色闪烁字的效果。
解释下特殊字符的使用及定义:
“\033”引导非常规字符序列。“m”意味着设置属性然后结束非常规字符序列
“44;37;5”为蓝色,前景白色,闪烁光标的特殊字符代码。具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
编码
颜色
/动作
(
m字符前使用
)
0
重新设置属性到缺省设置
1
设置粗体
2
设置一半亮度(模拟彩色显示器的颜色)
4
设置下划线(模拟彩色显示器的颜色)
5
设置闪烁
7
设置反向图象
22
设置一般密度
24
关闭下划线
25
关闭闪烁
27
关闭反向图象
30
设置黑色前景
31
设置红色前景
32
设置绿色前景
33
设置棕色前景
34
设置蓝色前景
35
设置紫色前景
36
设置青色前景
37
设置白色前景
38
在缺省的前景颜色上设置下划线
39
在缺省的前景颜色上关闭下划线
40
设置黑色背景
41
设置红色背景
42
设置绿色背景
43
设置棕色背景
44
设置蓝色背景
45
设置紫色背景
46
设置青色背景
47
设置白色背景
49
设置缺省黑色背景
|
其他有趣的代码还有:
1
2
3
4
5
6
7
|
\
033
[
2J
清除屏幕
\
033
[
0q
关闭所有的键盘指示灯
\
033
[
1q
设置“滚动锁定”指示灯
(
Scroll
Lock
)
\
033
[
2q
设置“数值锁定”指示灯
(
Num
Lock
)
\
033
[
3q
设置“大写锁定”指示灯
(
Caps
Lock
)
\
033
[
15
:
40H
把关闭移动到第
15行,
40列
\
007
发蜂鸣生
beep
|
world后面的\033[0m为恢复你默认设定,不然你的shell在运行该代码后,将修改你默认的设定
还可以使用printf 做彩色日志,支持输出到文件中.
转载请注明:CI_Knight » printf有趣的\033