设置超级终端中字符的颜色


在 ANSI 兼容终端(例如 xterm、rxvt、konsole 等)里, 可以用彩色显示文本而不仅仅是黑白。
 
下面的语句就输出高亮的黑色背景的绿色字。
printf("\033[1;40;32m%s\033[0m",” Hello,world!\n”);
\033 声明了转义序列的开始,然后是 [ 开始定义颜色。后面的 1 定义了高亮显示字符。
然后是背景颜色,这里面是40,表示黑色背景。接着是前景颜色,这里面是32,表示绿色。
我们用 \033[0m 关闭转义序列, \033[0m 是终端默认颜色。
    通过上面的介绍,就知道了如何输出彩色字符了。
 
下面是对于彩色字符颜色的一些定义:
    前景            背景              颜色
    ---------------------------------------
    30                40              黑色
    31                41              紅色
    32                42              綠色
    33                43              黃色
    34                44              藍色
    35                45              紫紅色
    36                46              青藍色
    37                47              白色

    代码              意义
    -------------------------
    0                终端默认设置
    1                高亮显示
    4                使用下划线
    5                闪烁
    7                反白显示
    8                不可见
*/

例如:
#include <stdio.h>

int main()
{
     printf("\033[1;40;33m%s\033[0m", "Hello,world!\n");
    exit(0);
}

posted on 2008-04-13 21:40  hybfly  阅读(501)  评论(0编辑  收藏  举报