代码拉取完成,页面将自动刷新
#pragma once
#include <iostream>
#include <cstdarg>
#include <ctime>
#include <string>
// 日志级别
#define DEBUG 0
#define NORMAL 1
#define WARNING 2
#define ERROR 3
#define FATAL 4
const char *LevelMap[] =
{
"DEBUG",
"NORMAL",
"WARNING",
"ERROR",
"FATAL"
};
// 打印版本
void logMessage(int level, const char *format, ...)
{
#ifndef DEBUG_SHOW
if(level== DEBUG) return;
#endif
// 标准部分
char stdBuffer[1024];
time_t timestamp = time(nullptr);
snprintf(stdBuffer, sizeof stdBuffer, "level[%s], time[%ld] ", LevelMap[level], timestamp);
// 自定义部分
char logBuffer[1024];
va_list args;
va_start(args, format);
vsnprintf(logBuffer, sizeof logBuffer, format, args);
va_end(args);
// 打印
printf("%s%s\n", stdBuffer, logBuffer);
}
// 文件版本
// #define LOGFILE "./[程序名称].log"
// void logMessage(int level, const char *format, ...)
// {
// #ifndef DEBUG_SHOW
// if(level == DEBUG) return;
// #endif
// char stdBuffer[1024]; // 标准部分(一定要有的)
// time_t timestamp = time(nullptr); // 时间
// snprintf(stdBuffer, sizeof stdBuffer, "[%s] [%ld] ", LevelMap[level], timestamp);
// char logBuffer[1024]; // 自定义部分(因需求)
// va_list args;
// va_start(args, format);
// vsnprintf(logBuffer, sizeof logBuffer, format, args);
// va_end(args);
// FILE *fp = fopen(LOGFILE, "a");
// fprintf(fp, "%s%s\n", stdBuffer, logBuffer);
// fclose(fp);
// }
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。