Что непонятного то? Вот пример с DWORD: Code: #include <stdio.h> #include <stdarg.h> #include <windows.h> DWORD do_sum(DWORD am, ...) { int i; DWORD vv = 0; va_list vl; va_start(vl,am); for(i=0;i<am;i++) vv+=va_arg(vl,DWORD); va_end(vl); return vv; } int main() { DWORD res = do_sum(7,15,23,54,66,77,541,100500); printf("%d\n",res); return 0; }