程序动态参数的实现

// test.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"


#include <stdio.h>
#include <conio.h>
#include "stdarg.h"
#include "time.h"
#include "string.h"
#include "stdlib.h"

char    VAR_LOG_Buffer[512];
char    VAR_LOG_filename[256];


void MN2_TRACEINIT(void)
{
    char        szFileName[256];
    struct tm   time;
    char        *p;
   
 
    _getsystime(&time);
    (time.tm_mon) ++;
    time.tm_year += 1900;
    strcpy( szFileName, __argv[0] );
    p = strrchr( szFileName,'//' );
    if(p)
    {
        *p = 0;
    }
    sprintf(VAR_LOG_filename, "%s//LogInfo//%04d-%02d-%02d %02d%02d%02d.LOG",
  szFileName, time.tm_year, time.tm_mon, time.tm_mday,
  time.tm_hour, time.tm_min, time.tm_sec);
}

void  MN2_TraceLow(const char *pFormat, ...)
{
 
    va_list     argptr;
    int         cnt;
    FILE        *fp;
 
    if(NULL == pFormat)
    {
        return;
    }
   
    va_start(argptr, pFormat);
    cnt = vsprintf(VAR_LOG_Buffer, pFormat, argptr);
    va_end(argptr); 
 
    if( NULL == ( fp = fopen(VAR_LOG_filename, "ab+") ) )
    {
        return;
    }
    fprintf(fp, "/r/n%s", VAR_LOG_Buffer);
    fclose( fp );
}

void main(void)
{
 MN2_TRACEINIT();
 MN2_TraceLow("TRACE_TIME (%02d:%02d:%02d)", /
  3 , 8, 59 );
 
 printf("%d%s%d%s/n",10,"aaaa",50,"dddd");
 getch();

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭