C++ 自定义日志函数打印日志

头文件

class BaseLog
{
public:
    static void Log(const char* format, ...);
};

cpp文件

/**
  ******************************************************************************
  * @file           : base_log.cpp
  * @author         : zhe.xiao
  * @brief          : None
  * @attention      : None
  * @date           : 2024/7/2
  ******************************************************************************
**/

#include "base_log.h"

void BaseLog::Log(const char* format, ...)
{
    char timebuffer[1024];
    // 日志时间
    time_t timestamp = time(nullptr);
    tm* ltm = localtime(&timestamp);
    int year = ltm->tm_year + 1900;
    int month = ltm->tm_mon + 1;
    int day = ltm->tm_mday;
    int hour = ltm->tm_hour;
    int min = ltm->tm_min;
    int second = ltm->tm_sec;

    snprintf(timebuffer, sizeof timebuffer, "[%s][%04d-%02d-%02d %02d:%02d:%02d]",
             "DEBUG", year, month, day, hour, min, second);

    // 日志内容
    char logBuffer[1024];
    va_list args;  // 初始化参数信息
            va_start(args, format);  // 初始化参数列表
    vsnprintf(logBuffer, sizeof logBuffer, format, args);  //日志内容存入logBuffe中
            va_end(args);

    // 打印日志信息
    printf("%s %s\n", timebuffer, logBuffer);

    // //往文件打印
    // FILE *fp = fopen(LOGFILE, "a");
    // fprintf(fp, "%s %s\n", timebuffer, logBuffer);
    // fclose(fp);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值