C-Programmierung

Arrays als Funktionsparameter

Zeigerarithmetik | | Array Parameter Beispiel

In C bzw. C++ werden immer nur einzelne Werte als Parameter übergeben.
Es gibt keine Möglichkeit, ein Array direkt an eine Funktion zu übergeben.

Q Wie übergebe ich nun Arrays als Parameter einer Funktion?

Als Zeiger auf die Anfangsadresse des Arrays!

Arrays sind implizite Zeiger, sie können daher genau wie normale Zeiger als Parameter einer Funktion übergeben werden. Der Zugriff auf das Array erfolgt dann mittels dem Indizierungsoperator [] oder mittels Zeigerarithmetik.

Der Funktionsparameter muss als ein entsprechender impliziter, d.h. int a[n], oder expliziter, d.h. int *a, Zeiger deklariert sein.

Bei der Deklaration eines Array-Parameters int a[n] kann die Größenangabe auch weggelassen werden: der Funktionsparameter int a[n] ist identisch mit int a[] und int *a.

Zeigerarithmetik | | Array Parameter Beispiel

Options: