int f (int x, int y, ...) { return x+y; } |
void check () { int a = f (1,2); int b = f (1,2,3); } |
wie kann man die ,,variablen`` Argumente in f erreichen (Syntax und Implementierung)?
Suche die printf
-Deklaration aus stdio.h
,
betrachte die printf
-Implementierung aus der GNU libc,
http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/stdio-common/?cvsroot=glibc
Was muß bei tail-call-Optimierungen von Unterprogrammen mit variablen Argumentlisten berücksichtigt werden?
Siehe dazu Mark Probst: Proper Tail Recursion in C, http://www.complang.tuwien.ac.at/~schani/