본문 바로가기

IT/프로그래밍

[Linux/C] printf같은 함수를 만들자

728x90

원글(이글루): 2009-12-29 20:27:44

va_list 형태로 인자를 여러개 받아 처리하는 함수를 만들수 있지.

int DebugText(char *fn, int type, const char *format,...)
{
    char        buffer[1000];
    int           cnt;
    FILE        *fp;

    va_list arglist;
    va_start(arglist,format);
    cnt = vsprintf(buffer, format, arglist);

        if(type == 0) {
                fp = fopen(fn, "wt");
                fwrite(buffer, strlen(buffer), 1, fp);
                fclose(fp);
        }
        else if(type == 1) {
                fp = fopen(fn,"at");
                fprintf(fp,"\n%s", buffer);
                fclose(fp);
        }

    va_end(arglist);
    return cnt;
}

728x90