BLOG main image
전체 (276)
[Computer] (42)
[Programming] (62)
[DBMS] (26)
[Operating System] (21)
[Study English] (8)
[For money] (28)
[Interest] (89)
«   2009/11   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          
77917 Visitors up to today!
Today 14 hit, Yesterday 95 hit
'가변인수'에 해당되는 글 1건
[폭주기관차, 2008/01/11 17:15, [Programming]/Visual C++ API/MFC]
함수에 가변인수를 주는 예제를 하나 작성해보았다.


#include <stdio.h>
#include <stdarg.h>         // va_ 매크로를 사용하기 위한 헤더

int Test( const char *args, ... )
{
    va_list ap;             // 변수 선언
   
    va_start( ap, args );   // args에 들어온 자료의 처음을 ap란 변수에 넣는다.
   
    while( args != 0 )
    {
        printf("%s\n", args);
                            // const char *형의 다음 자료를 하나 가져온다.
        args = va_arg( ap, const char * );
    }
   
    va_end( ap );           // args 를 종료한다.
   
    return 0;
}

int main( void )
{
    Test( "Test1", "Test2", "Test3", "Test4" );
   
    return 0;
}


va_list : 데이터 타입으로 사용자가 입력한 값이 저장되는 공간입니다.  

va_start(va_list argptr, arg_data_type) : 2개의 인자를 받는 매크로입니다.

va_arg(va_list argptr, T) : 다음 인자가 있을 경우 그 곳으로 이동하는 매크로입니다.

va_end(va_list argptr) : 가변 인자 처리 끝났음을 알리는 매크로입니다.


출처 : 가변인수의 예제
         va_start 함수의 설명

Trackback Address :: http://kongmks.cafe24.com/trackback/274
Name
Password
Homepage
Secret
*1