logSvr的日志打印函数
来源:互联网 发布:剑灵人族捏脸数据分享 编辑:程序博客网 时间:2024/05/16 06:57
#include<stdio.h>
#include<stdarg.h>
#define INT32 int
#define UINT8 char
#define Fatal (0)
#define Error (1)
#define Warning (2)
#define Info (3)
#define Debug (4)
#define MAX_LogSvrPrint_SIZE 1000 //日志的最大长度
#define g_LogSvrPrintfLevel 2 //从配置文件读取
/******************************************************************
函数名称:LogPrintf
功能描述:LogSvr模块本身的日志输出函数
输入参数:UINT8 blevel : 日志级别
void *pbMsg : 要打印的日志信息
... : 要输出值的变量,可加多个
输出参数:无
返回值 :0 : 成功 非零值 : 失败
其他说明:
修改日期 版本号 修改人 修改内容
------------------------------------------------------------------
******************************************************************/
INT32 LogPrintf(UINT8 blevel, void *pbMsg, ...)
{
va_list argptr;
UINT8 * pTempData = NULL;
UINT8 buffer[MAX_LogSvrPrint_SIZE] = {0};
if(blevel > g_LogSvrPrintfLevel)
{
return -1;
}
va_start(argptr, pbMsg);//将第一个可变参数的地址付给argptr,即:argptr指向它
#ifdef WIN32
_vsnprintf(buffer, MAX_LogSvrPrint_SIZE, pbMsg, argptr);
#else
vsnprintf(buffer, MAX_LogSvrPrint_SIZE, pbMsg, argptr);
#endif
pTempData = buffer;
printf(pTempData);
fflush(stdout);
return 0;
}
int main()
{
int sum = 100;
freopen("LogSvr.log","w", stdout);
LogPrintf(Fatal,"main get.....!\n");
LogPrintf(Fatal, "sum = %d\n", sum);
fclose(stdout);
return 0;
}
- logSvr的日志打印函数
- 日志 - 打印函数的调用过程
- 不定参数日志打印函数的封装
- 一个打印日志函数
- 宏函数打印日志
- 日志打印函数
- linux 下 打印日志函数
- 打印日志的写法
- log日志的打印
- 打印日志的时机
- 简单实用的打印函数执行日志的代码WriteLog函数
- 函数体中打印日志信息自动附加函数名字的一种实现办法
- dup函数日志打印重定向
- brit打印日志的问题
- 【J2ME】J2ME的日志打印
- 日志打印位置的选择
- 什么样的日志应该打印
- log4j日志打印的配置
- EFM32片内外设--LETimer One-short Mode
- 检测题3.1
- 完全卸载xcode的命令
- zoj 2176 Speed Limit
- 360需要的,不是打工者
- logSvr的日志打印函数
- ruby on Rails:动作视图纵览
- 关于伙伴算法
- android TranslateAnimation类作动态菜单
- linux实时任务调度算法分析
- 详解ASP.NET MVC 2中的新ADO.NET实体框架
- Oracle Install
- [我的ICS] - Platform终于开始了
- 源代码解读Cas实现单点登出(single sign out)功能实现原理