The printf
family of functions is defined to accept a variable
number of arguments, rather than a fixed argument list. You can define
your own functions with a variable argument list, by using macro
definitions from either `stdarg.h' (for compatibility with ANSI C)
or from `varargs.h' (for compatibility with a popular convention
prior to ANSI C).