C Bibliothek - <stdarg.h>
Das stdarg.h Header definiert einen Variablentyp va_list und drei Makros, die verwendet werden können, um die Argumente in einer Funktion abzurufen, wenn die Anzahl der Argumente nicht bekannt ist, dh eine variable Anzahl von Argumenten.
Eine Funktion variabler Argumente wird mit den Auslassungspunkten (, ...) am Ende der Parameterliste definiert.
Bibliotheksvariablen
Es folgt der im Header stdarg.h definierte Variablentyp -
Sr.Nr. | Variable & Beschreibung |
---|---|
1 | va_list Dies ist ein Typ, der zum Speichern von Informationen geeignet ist, die von den drei Makros benötigt werden va_start(), va_arg() und va_end(). |
Bibliotheksmakros
Es folgen die in der Kopfzeile stdarg.h definierten Makros -
Sr.Nr. | Makro & Beschreibung |
---|---|
1 | void va_start (va_list ap, last_arg) Dieses Makro wird initialisiert ap Variable, die mit dem verwendet werden soll va_arg und va_endMakros. Daslast_arg ist das letzte bekannte feste Argument, das an die Funktion übergeben wird, dh das Argument vor den Auslassungspunkten. |
2 | Typ va_arg (va_list ap, Typ) Dieses Makro ruft das nächste Argument in der Parameterliste der Funktion mit Typ ab type. |
3 | void va_end (va_list ap) Dieses Makro ermöglicht eine Funktion mit variablen Argumenten, die das verwendet va_startMakro, um zurückzukehren. Wennva_end Wird vor der Rückkehr von der Funktion nicht aufgerufen, ist das Ergebnis undefiniert. |