首页 > 系统服务 > 详细

Linux彩色输出

时间:2016-06-27 06:49:59      阅读:279      评论:0      收藏:0      [点我收藏+]

在linux下,可以使用一些宏,加上自定义格式输出,让输出更易于调试:

排版出来可能有些乱,注意do{ }while(0);是在一行里就可以了。

[cpp] view plain copy
 
  1. #include <stdio.h>  
  2. #include <stdlib.h>  
  3.   
  4. #define DEBUG1( fmt,  arg  ... )  \  
  5.     do{printf("[DEBUG] " fmt ,  ##arg );  }while(0);  
  6. #define DEBUG2( fmt,  arg  ... ) \  
  7.     do{printf("[%s: %s: line %d]" fmt ,\  
  8.         __FILE__, __FUNCTION__, __LINE__,  ##arg );  }while(0);  
  9.   
  10. #define PrintColor1( fmt,  arg  ... )   \  
  11.     do{printf("\033[30m""[%s: %s: line %d]" fmt"\033[0m" ,\  
  12.         __FILE__, __FUNCTION__, __LINE__,  ##arg );  }while(0);  
  13.       
  14. #define PrintColor2( fmt,  arg  ... )   \  
  15.     do{printf("\033[31m""[%s: %s: line %d]" fmt"\033[0m" ,\  
  16.         __FILE__, __FUNCTION__, __LINE__,  ##arg );  }while(0);  
  17.       
  18. #define PrintColor3( fmt,  arg  ... )   \  
  19.     do{printf("\033[32m""[%s: %s: line %d]" fmt"\033[0m" ,\  
  20.         __FILE__, __FUNCTION__, __LINE__,  ##arg );  }while(0);  
  21.       
  22. #define PrintColor4( fmt,  arg  ... )   \  
  23.     do{printf("\033[33m""[%s: %s: line %d]" fmt"\033[0m" ,\  
  24.         __FILE__, __FUNCTION__, __LINE__,  ##arg );  }while(0);  
  25.       
  26. #define PrintColor5( fmt,  arg  ... )   \  
  27.     do{printf("\033[34m""[%s: %s: line %d]" fmt"\033[0m" ,\  
  28.         __FILE__, __FUNCTION__, __LINE__,  ##arg );  }while(0);  
  29.       
  30. #define PrintColor6( fmt,  arg  ... )   \  
  31.     do{printf("\033[35m""[%s: %s: line %d]" fmt"\033[0m" ,\  
  32.         __FILE__, __FUNCTION__, __LINE__,  ##arg );  }while(0);  
  33.       
  34. #define PrintColor7( fmt,  arg  ... )    \  
  35.     do{printf("\033[36m""[%s: %s: line %d]" fmt"\033[0m" ,\  
  36.         __FILE__, __FUNCTION__, __LINE__,  ##arg );  }while(0);  
  37.   
  38. int main()  
  39. {  
  40.     printf("I AM IN macro.c\n");  
  41.   
  42.     DEBUG1("I AM IN macro.c\n");  
  43.     DEBUG2("I AM IN macro.c\n");  
  44.   
  45.     PrintColor1("I AM IN macro.c\n");  
  46.     PrintColor2("I AM IN macro.c\n");  
  47.     PrintColor3("I AM IN macro.c\n");     
  48.     PrintColor4("I AM IN macro.c\n");  
  49.     PrintColor5("I AM IN macro.c\n");     
  50.     PrintColor6("I AM IN macro.c\n");  
  51.     PrintColor7("I AM IN macro.c\n");  
  52.   
  53.     return 0;  
  54. }  




输出结果:

 

技术分享
 
http://blog.csdn.net/xiangpingli/article/details/7914133

Linux彩色输出

原文:http://www.cnblogs.com/findumars/p/5619057.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!