/* Collection of code snippets by Arne Vajhøj */
/* (likely posted to comp.os.vms/INFO-VAX, INFO-TPU, MACRO32, eksperten.dk, newz.dk, LinkedIn or other place sometime between 1990 and now) */
#include <stdio.h>
#include <stdarg.h>

void f2(int n, va_list argptr)
{
   int i;
   for(i = 0; i < n; i++)
   {
      printf(" %d", va_arg(argptr,int));
   }
   printf("\n");
}

void f1(int n, ...)
{
   va_list argptr;
   va_start(argptr, n);
   f2(n, argptr);
   va_end(argptr);
}

int main(int argc,char *argv[])
{
   f1(0);
   f1(1, 1);
   f1(2, 1, 2);
   f1(3, 1, 2, 4);
   return 0;
}
