如何在printf中,实现颜色和输出格式的控制呢?
对printf的控制, 通过转义序列来实现, 转义序列是以 ESC(ESC 的 ASCII 码用十进制表示就是 27, = 用八进制表示的 033)开头,如:
1 输出颜色控制
\033[显示方式;前景色;背景色m
printf("\033[MOD;FG;BGm%s\033[0m\n", "hello world");
MOD 可以取值如下:
0 默认值
1 高亮
2 粗体
22 非粗体
4 下划线
24 非下划线
5 闪烁
25 非闪烁
7 反显
27 非反显
FG可以取值如下:
30 黑色
31 红色
32 绿色
33 黄色
34 蓝色
35 洋红
36 青色
37 白色
BG可以取值如下:
40 黑色
41 红色
42 绿色
43 黄色
44 蓝色
45 洋红
46 青色
47 白色
1 输出位置控制
\033[x坐标;y坐标H
printf("\033[X;YH");
X,Y为具体的数值,可以将光标移至(X,Y)处。
阅读(1978) | 评论(0) | 转发(0) |