>> Edit article
이름
제목
패스워드
C source를 보다보니... va_list 라는 타입이 나오는군요. 영문 매뉴얼을 참조하고, 또 나름대로 이해한 내용을 가지고서 여기저기 대입을 해보고 있는데.. 웬지 제가 이해한 부분이 잘못된 거 같다라는 생각이 듭니다. 혹시 이 타입에 대하여 잘 알고 계시는 분이 있나 해서요... 제가 이해하고 있는 내용은 다음과 같습니다. 혹시, 틀린 부분이 있다면 지적 부탁드립니다. va_list : stdio.h 헤더 파일안에 선언되어 있는 매개변수들을 가리키기 위한 포인터로, 소스 파일안에서 사용되는 변수. va_arg(va_list arg_ptr, type) : 현재 타입으로 선언되어 있는 arg_ptr을 다룰수 있는 매크로. va_start(va_list arg_ptr) : 매개변수들의 목록의 시작점을 설정하는 매크로. va_end(va_arg arg_ptr) : 재설정 매크로 사용 예)) int one(char *fmt, ...) { va_list marker; struct tm; FILE *fp; char stamp[40]; ..... va_start(marker, fmt); fprintf("%s...."); vprintf(fmt, marker); fprintf(fp, "%s: %5d",stamp,getpid()); vprintf(fp,fmt, marker); va_end(marker); fclose(fp); .... } 변수의 뜻대로 대입을 해봐도.... 위에서 이 매크로들이 어떻게 사용된 건지.. 잘 이해가 않되네요. 조언 좀 부탁드리겠습니다. --
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved