C Standard-Bibliothek

Variable Argumentenliste: <stdarg.h>


Die Definitionsdatei <stdarg.h> bietet die Möglichkeit, eine Liste von Funktionsargumenten abzuarbeiten, deren Länge und Datentypen nicht bekannt sind.

Angenommen, lastarg ist der letzte benannte Parameter einer Funktion f, die mit einer variablen Anzahl von Argumenten aufgerufen wird. Dann vereinbart man in f eine Variable ap vom Datentyp va_Iist, die der Reihe nach auf jedes Argument zeigen wird:

	va_list ap;
ap muß einmal mit dem Makro va_start initialisiert werden, bevor auf die umbenannten Argumente zugegriffen wird:
	va_start(va_list ap, lastarg);
Daran anschließend liefert jede Ausführung des Makros va_arg einen Wert, der den Datentyp und den Wert des nächsten umbenannten Arguments besitzt. Außerdem ändert der Makro den Wert von ap so, daß der nächste Aufruf von va_arg das nächste Argument liefert:
	type va_arg(va_list ap, type);
Der Makro
	void va_end(va_list ap);
muß einmal aufgerufen werden, nachdem die Argumente bearbeitet wurden, aber vor Schluß von f.


[ Anfang der Seite | Inhaltsverzeichnis | Funktions-Register Header-Register ]

 

15. November 1999, Peter Klingebiel, DVZ