C-Programmierung

Ellipsen

Open-Source Software | | Parameterlisten

von griech. ellipsis, Auslassung eines Satzteils, gekennzeichnet durch

Die Ellipse wird in C benutzt, um eine variable Anzahl von Parametern zu deklarieren.

Beispiel:

int printf(const char *format, ...);

Einschränkung: Mindestens ein Argument muss benamt sein.

Durch die Weglassung der Parameter-Typen ist eine Typprüfung zur Compile-Zeit nicht möglich. Es müssen zur Laufzeit andere Mechanismen zur Erkennung der Anzahl der Parameter und der dazugehörigen Datentypen herangezogen werden.

Unter der Annahme, dass alle Argumente vom selben Typ sind, kann man die Anzahl der Parameter herausfinden, indem man vereinbart, dass der letzte Parameter durch einen speziellen Wert gekennzeichnet sein soll.

Alle Funktionsargumente werden der Reihe nach auf dem Stapel abgelegt. Das erste unbenamte Argument liegt demnach hinter dem letzten benamten. Aufgrund dieser Eigenschaft kann man die Adresse des ersten unbenamten Parameters als Nachfolgeadresse des letzten benamten ermitteln. Alle weiteren unbenamten Argumente liegen an den Folgeadressen.

Open-Source Software | | Parameterlisten

Options: