The header file stdarg.h supports functions with variable argument
lists. This allows functions to have arguments without corresponding parameter
declarations. There must be at least one named argument. The variable arguments are
represented by ellipses (...). An object of type va_list must be
declared inside the function to hold the arguments. va_start will
initialize the variable to an argument list, va_arg will access the
argument list and va_end will end the use of the argument.