为了给printf着色方便, 我们可以定义一些宏:

  1. #define NONE          "/033[m"
  2. #define RED           "/033[0;32;31m"
  3. #define LIGHT_RED     "/033[1;31m"
  4. #define GREEN         "/033[0;32;32m"
  5. #define LIGHT_GREEN   "/033[1;32m"
  6. #define BLUE          "/033[0;32;34m"
  7. #define LIGHT_BLUE    "/033[1;34m"
  8. #define DARY_GRAY     "/033[1;30m"
  9. #define CYAN          "/033[0;36m"
  10. #define LIGHT_CYAN    "/033[1;36m"
  11. #define PURPLE        "/033[0;35m"
  12. #define LIGHT_PURPLE "/033[1;35m"
  13. #define BROWN         "/033[0;33m"
  14. #define YELLOW        "/033[1;33m"
  15. #define LIGHT_GRAY    "/033[0;37m"
  16. #define WHITE         "/033[1;37m"
  1. #define NONE          "/033[m"
  2. #define RED           "/033[0;32;31m"
  3. #define LIGHT_RED     "/033[1;31m"
  4. #define GREEN         "/033[0;32;32m"
  5. #define LIGHT_GREEN   "/033[1;32m"
  6. #define BLUE          "/033[0;32;34m"
  7. #define LIGHT_BLUE    "/033[1;34m"
  8. #define DARY_GRAY     "/033[1;30m"
  9. #define CYAN          "/033[0;36m"
  10. #define LIGHT_CYAN    "/033[1;36m"
  11. #define PURPLE        "/033[0;35m"
  12. #define LIGHT_PURPLE "/033[1;35m"
  13. #define BROWN         "/033[0;33m"
  14. #define YELLOW        "/033[1;33m"
  15. #define LIGHT_GRAY    "/033[0;37m"
  16. #define WHITE         "/033[1;37m"

  随后,我们就可以方便的使用了,例如:

  1. #include <stdio.h>
  2. #define NONE          "/033[m"
  3. #define RED           "/033[0;32;31m"
  4. #define LIGHT_RED     "/033[1;31m"
  5. #define GREEN         "/033[0;32;32m"
  6. #define LIGHT_GREEN   "/033[1;32m"
  7. #define BLUE          "/033[0;32;34m"
  8. #define LIGHT_BLUE    "/033[1;34m"
  9. #define DARY_GRAY     "/033[1;30m"
  10. #define CYAN          "/033[0;36m"
  11. #define LIGHT_CYAN    "/033[1;36m"
  12. #define PURPLE        "/033[0;35m"
  13. #define LIGHT_PURPLE "/033[1;35m"
  14. #define BROWN         "/033[0;33m"
  15. #define YELLOW        "/033[1;33m"
  16. #define LIGHT_GRAY    "/033[0;37m"
  17. #define WHITE         "/033[1;37m"
  18. int  main()
  19. {
  20. printf("/033[1m/033[40;34mhello,world/033[0m/n" );
  21. printf(RED"RED FONT" BLUE "%s/n" NONE, "BLUE FONT" );
  22. return  0;
  23. }
  1. #include <stdio.h>
  2. #define NONE          "/033[m"
  3. #define RED           "/033[0;32;31m"
  4. #define LIGHT_RED     "/033[1;31m"
  5. #define GREEN         "/033[0;32;32m"
  6. #define LIGHT_GREEN   "/033[1;32m"
  7. #define BLUE          "/033[0;32;34m"
  8. #define LIGHT_BLUE    "/033[1;34m"
  9. #define DARY_GRAY     "/033[1;30m"
  10. #define CYAN          "/033[0;36m"
  11. #define LIGHT_CYAN    "/033[1;36m"
  12. #define PURPLE        "/033[0;35m"
  13. #define LIGHT_PURPLE "/033[1;35m"
  14. #define BROWN         "/033[0;33m"
  15. #define YELLOW        "/033[1;33m"
  16. #define LIGHT_GRAY    "/033[0;37m"
  17. #define WHITE         "/033[1;37m"
  18. int main()
  19. {
  20. printf("/033[1m/033[40;34mhello,world/033[0m/n");
  21. printf(RED"RED FONT"BLUE"%s/n"NONE,"BLUE FONT");
  22. return 0;
  23. }

  其中:

     /033[1m 设置高亮度
     /033[字背景颜色;字体颜色m字符串/033[0m

附录:vt100的控制符文档

vt100可以实现终端上显示颜色,或者移动光标什么的,下面是网上流传的文档。

=============颜色控制====================
格式: echo "33[字背景颜色;字体颜色m字符串33[0m"

例如:
echo "33[41;36m something here 33[0m"

其中41的位置代表底色, 36的位置是代表字的颜色

那些ascii code 是对颜色调用的始末.
33[ ; m …… 33[0m

字背景颜色范围:40----49
40:黑
41:深红
42:绿
43:黄色
44:蓝色
45:紫色
46:深绿
47:白色

字颜色:30-----------39
30:黑
31:红
32:绿
33:黄
34:蓝色
35:紫色
36:深绿
37:白色

============ANSI控制码的说明 ===============
33[0m 关闭所有属性
33[1m 设置高亮度
33[4m 下划线
33[5m 闪烁
33[7m 反显
33[8m 消隐
33[30m -- 33[37m 设置前景色
33[40m -- 33[47m 设置背景色
33[nA 光标上移n行
33[nB 光标下移n行
33[nC 光标右移n行
33[nD 光标左移n行
33[y;xH设置光标位置
33[2J 清屏
33[K 清除从光标到行尾的内容
33[s 保存光标位置
33[u 恢复光标位置
33[?25l 隐藏光标
33[?25h 显示光标

printf 字体颜色打印的更多相关文章

  1. zend studio 9.0.4 破解、汉化和字体颜色及快捷键相关设置

    转载:http://www.penglig.com/post-45.html 下载:http://www.geekso.com/component/zendstudio-downloads/ 破解:h ...

  2. [转载]Linux下终端字体颜色设置方法

    原文地址:Linux下终端字体颜色设置方法作者:router 网上类似的文章有很多,但是都是转来转去的,没有经过测试,按照很多文章的方法会造成你设置之后的终端在换行和删除输入字符时终端显示会乱七八糟, ...

  3. zend studio 破解、汉化和字体颜色及快捷键相关设置

    下载:http://www.geekso.com/component/zendstudio-downloads/ 破解:http://www.geekso.com/ZendStudio9-key/ 注 ...

  4. linux下 C编程改变输出字体颜色

    格式: echo "\033[字背景颜色;字体颜色m字符串\033[0m"例如:echo "\033[41;36m something here \033[0m" ...

  5. shell输出颜色、printf输出颜色

    1.echo开启彩色输出: -e 开启echo中的转义: \e或者\033来输出Esc颜色: 恢复默认颜色为:\e[0m; 命令格式: echo -e "\e[字背景颜色:文字颜色m字符串\ ...

  6. linux终端c语言改变输出字体颜色

    Linux下C改变输出字体颜色 例: #include int main() { printf("\033[31mThis is RED.\n\033[0m"); return 0 ...

  7. Android SearchView 自定义SearchIcon和字体颜色大小

    自定义SearchView的搜索图标和字体属性相对复杂一些,记下来. 一.自定义SearchIcon 1.API版本低于21:版本小于21时,要修改SearchIcon比较复杂,需要先获取到Searc ...

  8. Mardown字体颜色、背景色

    Markdown字体颜色.背景色 字体颜色表 Markdwon测试 **粗体文字**,或__加文字__ 加粗 Markdown测试 *斜体文字*, 或_斜体_ 斜体 Markdwon测试 列表: 背景 ...

  9. iOS 设置不同的字体颜色

    //设置不同字体颜色 -(void)fuwenbenLabel:(UILabel *)labell FontNumber:(UIFont *)font AndRange:(NSRange)range ...

随机推荐

  1. Python 默认参数

    定义默认参数 定义函数的时候,还可以有默认参数. 例如Python自带的 int() 函数,其实就有两个参数,我们既可以传一个参数,又可以传两个参数: >>> int('123') ...

  2. HDU1823-Luck and Love-二维线段树(模板)

    题目链接:http://acm.hdu.edu.cn/showproblem.php? pid=1823 好吧,给这题跪了. ..orz.... 一道非常基础的二维线段树的模板题: 可是细节非常多:尤 ...

  3. 王立平--svnserver搭建

    1.下载 2.安装打开. 3.新建存储库. ---------------------------------- 4.新建用户. watermark/2/text/aHR0cDovL2Jsb2cuY3 ...

  4. 【Redis】redis开机自启动、设置守护进程、密码设置、访问权限控制等安全设置(redis默认端口6379)

    一.redis设置开机自启动:centOS: 1.修改redis.conf中daemonize为yes,确保守护进程开启,也就是在后台可以运行. (守护进程:孤儿进程:独立于终端而存在的进程,不会因为 ...

  5. Hive面试题——累计求和

    需求: 有如下访客访问次数统计表 t_access_times 访客 月份 访问次数 A 2015-01 5 A 2015-01 15 B 2015-01 5 A 2015-01 8 B 2015-0 ...

  6. centos6.3下yum安装redis

    我得是centos 6.3,如果直接用yum安装redis,报错,如下: [root@CentOS6 etc]# yum install redis Loaded plugins: fastestmi ...

  7. android VLayout 全面解析

    概述 前不久.阿里新开源了2个东西,Atlas和vlayout.今天我来介绍下vlayout的使用. 在介绍前,先抱怨两句,阿里放开源出来,感觉就是让我们这群人给他们找bug~~我曾遇到一个奇怪的问题 ...

  8. Laravel Eloquent ORM--整理(未转)

    转:http://blog.csdn.net/a437629292/article/details/46312695 http://www.jianshu.com/p/cb641a4f3599

  9. [原]C#设置文件夹用户权限

    var security = new DirectorySecurity();   string path=@"C:\temp" //设置权限的应用为文件夹本身.子文件夹及文件,所 ...

  10. atitit.thumb生成高质量缩略图 php .net c++ java

    atitit.java thumb生成高质量缩略图 php .net c++ 1. 图像缩放(image scaling)---平滑度(smoothness)和清晰度(sharpness) 1 2.  ...