变参日志函数

在日志记录时经常需要输入多种格式的内容,我们可以编写一个动态参数的打印日志函数:

实例:

#include<stdio.h>
#include<string>

void LogError(const char *format, ...)
{
    FILE *gErrorFile = NULL;
    cahr buffer[256]='D:\test\errorlog.log';  // 日志文件路径
    gErrorFile = fopen(buffer, "a");
    if (gErrorFile == NULL)
        return;
    va_list argp;  // 参数列表
    va_start(argp, format);   // 开始参数列表格式化
    char logLine[1000];
    vsnprintf(logLine, _countof(logLine) - 1, format, argp);  
    logLine[_countof(logLine) - 1] = '\0';
    time_t timeTick = time(NULL);
    char timeStamp[24];
    strftime(timeStamp, _countof(timeStamp), "%Y-%m-%d %H:%M:%S", localtime(&timeTick));
    fprintf(gErrorFile, "%s: %s\n", timeStamp, logLine);
    fflush(gErrorFile);
    va_end(argp);  // 结束参数列表格式化
}

就是那么简单!!!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值