dynamische Arrays in Funktionen ändern
-
Hallo!
Ich habe ein zweidimensionales Array, dessen Größe und Inhalt in einer Unterfunktion bestimmt wird. Wie gebe ich dieses Array mit Inhalt und Größe wieder an meine main-Funktion zurück. Bei eindimensionales funktioniert es schon:int main(void) { int *i; berechne_Array(i); // Ausgabe des Arrays return 0; } void berechne_Array(int * & i) { i=new int[5]; // Anlegen des Arrays; }Aber in 2D klappt das gleiche nicht:
int main(void) { int **i; i=new int*[5]; berechne_Array(i); // Ausgabe des Arrays return 0; } void berechne_Array(int ** & i) { i[0]=new int[5]; //... // Anlegen des Arrays }Wieso klappt das mit mehrdimensionalen Arrays nicht, und wo finde ich wie das klappt?
Vielen Dank!
Filius
-
Warum übergibst du das mit der Referenz? - Sind ja nur Zeiger..
Was geht dann nicht? - Compiler Error? Oder macht es nicht das, was du denkst?