Hallo, wie kann ich ein Array an eine Funktion übergeben? habe es so versucht: void Funktion(int array[]) { } Leider liefert mir der Compiler dabei immer einen Fehler.
Ich weiß garnich ob des in C Funktioniert. Aber wenn doch sollte der Typ Integer Array sein, also: void Funktion(int[] meinarray); mfg
Übergib einfach die Adresse deines Array´s mit einem Pointer. int array[]; void Funktion(&array) { }
Geht doch: gcc -Wall -pedantic main.c && ./a.out main.c:
1 | #include <stdio.h> |
2 | |
3 | void Funktion(int array[]) |
4 | {
|
5 | int i = 0; |
6 | while (array[i] > 0) |
7 | printf("%d\n", array[i++]); |
8 | }
|
9 | |
10 | int main(int argc, char ** argv) { |
11 | int a[] = {1, 2, 99, 9, 7, 0}; |
12 | Funktion(a); |
13 | return (0); |
14 | }
|
Ausgabe: 1 2 99 9 7
Der eintrag von Gast (Gast) "void Funktion(&array)" geht erstmal gar nicht. Hier ein kleines Beispiel mit Deklaration und Aufruf [] - Optional
1 | int array[1000]; |
2 | // Im allgemeinen sieht eine Funktionsdeklaration so aus
|
3 | // Rückgabewert Funktionsname(Datentyp [Pointer] NAME) Befehl
|
4 | void funktion(int *array) |
5 | {
|
6 | }
|
7 | |
8 | void main |
9 | {
|
10 | funktion(array); // Adresse des ersten Elements |
11 | funktion(&array[0]); // Das selbe nur lesbarer |
12 | // & liefert Adresse
|
13 | }
|
[] - Optional
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.