카테고리 없음
가변인자 처리하는 방법 cdecl 호출규약 방식
НooпeУ
2012. 4. 7. 19:19
va_list 라는 자료형 제공
//...을 매개변수로 못넘기니깐 va_list를 사용하는 것임
int sum(int count, ....){
va_list va;
int i;
int iSum = 0;
va_start(va, count); //va 시작 주소 저장
//남은 인자의 수만큼 데이터를 꺼내 더함
for (i = 0; i < count ; ++i) {
iSum += (int) va_arg(va, int); //va + sizeof(type) 이동후 type으로 캐스팅
}
//가변 인자 사용종료
va_end(va);
return iSum;
}