Chinaunix首页 | 论坛 | 博客
  • 博客访问: 374108
  • 博文数量: 53
  • 博客积分: 1411
  • 博客等级: 上尉
  • 技术积分: 701
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-04 14:40
文章分类

全部博文(53)

文章存档

2011年(6)

2010年(20)

2009年(18)

2008年(9)

我的朋友

分类: LINUX

2010-04-16 14:01:17

如何在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) |
给主人留下些什么吧!~~