printf字体

 

#define DP1(format, arg...) printf("\x1b[0;31m"format"\x1b[0m", ##arg)

#define DP(format, arg...) \
        do { \
                char debuf[2 * 1024]; \
                snprintf(debuf, 2 * 1024, \
                                   "\x1b[0;31m"format"\x1b[0m", \
                                   ##arg); \
                printf("%s", debuf); \
        } while (0);

 

#与##

一个#表示字符串化;两个#代表concatenate 

 

 
 
Linux下printf输出颜色
 
printf("\033[字背景颜色;字体颜色m字符串\033[0m");
 
 
参考:
printf("\033[41;32m字体背景是红色,字是绿色\033[0m\n");
41是字背景颜色, 32是字体的颜色, 字体背景是红色,字是绿色是字符串. 后面的\033[0m是控制码.

颜色代码:
QUOTE:
字背景颜色范围: 40--49 字颜色: 30--39

40: 黑 30: 黑
41: 红 31: 红
42: 绿 32: 绿
43: 黄 33: 黄
44: 蓝 34: 蓝
45: 紫 35: 紫
46: 深绿 36: 深绿
47: 白色 37: 白色

ANSI控制码:
QUOTE:
\033[0m 关闭所有属性
\033[1m 设置高亮度
\03[4m 下划线
\033[5m 闪烁
\033[7m 反显
\033[8m 消隐
\033[30m -- \033[37m 设置前景色
\033[40m -- \033[47m 设置背景色

\033[nA 光标上移n行
\03[nB 光标下移n行
\033[nC 光标右移n行
\033[nD 光标左移n行
\033[y;xH设置光标位置
\033[2J 清屏
\033[K 清除从光标到行尾的内容
\033[s 保存光标位置
\033[u 恢复光标位置
\033[?25l 隐藏光标
\33[?25h 显示光标

这样, 在某些时候就可以实现动态的输出

 

 

    1. #ifdef DEBUG
    2. #define F_OUT printf("%s:", __FUNCTION__);fflush(stdout);
    3. #define L_OUT printf("%s:%d:", __FILE__, __LINE__);fflush(stdout);
    4. #define A_OUT printf("%s:%d:%s:", __FILE__, __LINE__, __FUNCTION__);fflush(stdout);
    5. #define D_OUT printf("DEBUG:");fflush(stdout);
    6. #define F_PRINTF(fmt, arg...) F_OUT printf(fmt, ##arg)
    7. #define L_PRINTF(fmt, arg...) L_OUT printf(fmt, ##arg)
    8. #define A_PRINTF(fmt, arg...) A_OUT printf(fmt, ##arg)
    9. #define PRINTF(fmt, arg...) D_OUT printf(fmt, ##arg)
    10. #define DBUG(a) {a;}
    11. #else
    12. #define F_OUT
    13. #define L_OUT
    14. #define A_OUT
    15. #define D_OUT
    16. #define F_PRINTF(fmt, arg...)
    17. #define L_PRINTF(fmt, arg...)
    18. #define A_PRINTF(fmt, arg...)
    19. #define PRINTF(fmt, arg...)
    20. #define DBUG(a)
    21. #endif
    22. #define F_PERROR(fmt) F_OUT perror(fmt)
    23. #define L_PERROR(fmt) L_OUT perror(fmt)
    24. #define A_PERROR(fmt) A_OUT perror(fmt)
    25. #define PERROR(fmt) D_OUT perror(fmt)

 

 

posted on 2015-07-16 11:07  DayAfterDay  阅读(143)  评论(0编辑  收藏  举报

导航