IT技术交流C使用宏定义定制丰富

#pragmaonce#includestdarg.h        /*va_start*/#includeiostream        /*vsprintf*/enumLOG_LEVEL{  LOG_LEVEL_DEBUG,  LOG_LEVEL_INFO,  LOG_LEVEL_WARN,  LOG_LEVEL_ERROR,  LOG_LEVEL_FATAL};voidprint_log(LOG_LEVELlevel,constchar*func_name,intline,constchar*fmt,...){  va_listap;  intcount;  switch(level)  {  caseLOG_LEVEL_DEBUG:    fprintf(stdout,[DEBUG]);    break;  caseLOG_LEVEL_INFO:    fprintf(stdout,[INFO]);    break;  caseLOG_LEVEL_WARN:    fprintf(stdout,[WARNING]);    break;  caseLOG_LEVEL_ERROR:    fprintf(stdout,[ERROR]);    break;  default:    fprintf(stdout,[INFO]);    break;  }  fprintf(stdout,[%sline:%d],func_name,line);  va_start(ap,fmt);  count=vfprintf(stdout,fmt,ap);  fprintf(stdout,\n);  fflush(stdout);  va_end(ap);}#defineLOG_DEBUG(...)print_log(LOG_LEVEL_DEBUG,__func__,__LINE__,##__VA_ARGS__)#defineLOG_INFO(...)print_log(LOG_LEVEL_INFO,__func__,__LINE__,##__VA_ARGS__)#defineLOG_WARN(...)print_log(LOG_LEVEL_WARN,__func__,__LINE__,##__VA_ARGS__)#defineLOG_ERROR(...)print_log(LOG_LEVEL_ERROR,__func__,__LINE__,##__VA_ARGS__)#defineLOG_FATAL(...)print_log(LOG_LEVEL_FATAL,__func__,__LINE__,##__VA_ARGS__)







































白癜风吃什么药最好
北京较好的白癜风医院



转载请注明:http://www.nydjfy.com/xxzl/1085.html

  • 上一篇文章:
  •   
  • 下一篇文章: