프로그래밍 노트

[C]함수의 파라미터를 고무줄 처럼 본문

C++ TIP

[C]함수의 파라미터를 고무줄 처럼

띠리 2008. 6. 4. 11:59

함수의 고무줄 파리미터 초간단 예제


#include <stdio.h>
#include <stdarg.h>

void testit ( int i, ...)
{
    va_list argptr;
    int  n;

    // 가변 인수 수의 초기화
    va_start(argptr, i);

    if ( i == 5 ) {
     
        for(int j = 0; j < i; j++)
        {
            // 다음 인수 얻기
            n = va_arg( argptr, int );
            printf( "%d\n", n );
        }
    } else {
        char *s = va_arg( argptr, char* );
        printf( "%s\n", s);
    }
    // 가변 인수 수의 리셋
    va_end(argptr);
}

int main()
{
    testit( 5, 12, 34, 56, 78, 90 );
    testit( 1, "TEST" );     

    return 0;
}




 

Comments