das geht wenn man als letzten Parameter einfach "..." (also 3 Punkte angibt). Da nimmt die Funktion dann beliebig viele Parameter an (aber mindestens soviele, wie vor den Punkten als andere Parameter angegeben sind)
Auswerten kann man diese Parameter dann mit Macros, die in "stdarg.h" definiert sind...
Mehr Infos und Beispiele hier:
http://msdn.microsoft.com/en-us/library/…28VS.80%29.aspx
zwar speziell für Visual C++, das geht in andern Compilern aber auch.