Funktionsaufruf mit Arrays
-
Hallo Community
Ich habe eine wahrscheinlich einfach zu beantwortende frage, komme allerdings grad selber nicht dahinter.kurz:
-ich habe 3 verschiedene Arrays
-ich möchte auf jedes dieser 3 Arrays die gleiche Funktion anwenden
-nach dem Funktionsaufruf, kommt das gewünschte Ergebnis raus
-nach dem Funktionsaufruf mit dem nächsten Array, wird scheinbar das erste überschrieben, so dass ich nachher statt 3 verschiedener Arrays, 3 mal das gleiche, letzte Array habeWoran kann das liegen?
lang:
ich habe 3 Arrays:
int array1[x]; int array2[x]; int array3[x];
ich möchte mit einer Funktion diese Arrays verarbeiten:
funktion_x(array1,size); funktion_x(array2,size); funktion_x(array3,size);
Wenn ich nun nach jedem Funktionsaufruf das jeweilige, veränderte Array ausgeben lasse, kommt jeweils das gewünschte Ergebnis raus.
funktion_x(array1,size); ausgeben(array1,size); funktion_x(array2,size); ausgeben(array2,size); funktion_x(array3,size); ausgeben(array3,size);
Da ich die Arrays aber später noch mit weiteren Funktionen bearbeiten will, sollen diese natürlich nicht nur einmal korrekt ausgegeben werden.
Wenn ich also erst die Funktion auf alle 3 Arrays anwende und dann alle 3 ausgebe, kommt 3 mal das selbe Array raus.funktion_x(array1,size); funktion_x(array2,size); funktion_x(array3,size); ausgeben(array1,size); ausgeben(array2,size); ausgeben(array3,size);
Die Funktion ist wie folgt aufgebaut:
int funktion_x(int array[],int size){ // veraender das Array return wert; }
Wo könnte der Fehler liegen?
Danke schonmal für eine Antwort
-
Was ist
x
? Was istsize
? Was passiert infunktion_x
? Was machtausgeben
?Wie wärs mit einem compilierbaren Minimalbeispiel, welches das Problem verdeutlicht?
-
patrik92 schrieb:
Wo könnte der Fehler liegen?
In dem Teil des Code, den du nicht zeigst.
Globale Variablen, static Variablen, verbogene Zeiger, falscher Scope oder Anderes.