Wieso können Zeiger nicht auf mehrdimensionale Arrays zeigen?
-
Also. Ich bin Anfänger. Habe hier auch schon öfter etwas gefragt. Ich denke, die Antwort auf meine jetzige Frage ist einfach, kann dazu aber nichts finden also:
Folgender code funktioniert problemlos:#include <iostream> using namespace std; int main() { int array[3]; int *ptr_array; ptr_array=array; }
Ich möchte aber gerne Zeiger auf mehrdimensionale Arrays haben:
#include <iostream> using namespace std; int main() { int array[3][3]; int *ptr_array; ptr_array=array; }
Dieser code funktionoiert nicht. Also: wieso geht das nicht und wie kann ich eine andere Lösung verwenden?
-
Du mußt einen Pointer auf pointer verwenden um das zu realisieren, also int ** ptr_array.
-
Aha. Ich bekomme den code trotzdem nicht hin. Bekomme immernoch die Fehlermeldug. Vieleicht kannst da ja mal nen kleinen Beispielcode schreiben. Danke.
-
Jester schrieb:
Du mußt einen Pointer auf pointer verwenden um das zu realisieren, also int ** ptr_array.
müssen? kaum.
#include <iostream> using namespace std; int main() { int array[3][3]; int (*ptr_array)[3]; ptr_array=array; }
-
camper schrieb:
Jester schrieb:
Du mußt einen Pointer auf pointer verwenden um das zu realisieren, also int ** ptr_array.
müssen? kaum.
jo. Welche Variante war nun gleich flexibler?
btw, täusche ich mich, oder kann es sein, daß in letzter Zeit viele Korinthen gekackt werden?
-
Jester schrieb:
btw, täusche ich mich, oder kann es sein, daß in letzter Zeit viele Korinthen gekackt werden?
unglaublich viele.
-
Jester schrieb:
jo. Welche Variante war nun gleich flexibler?
Das entscheidende duerfte wohl sein, dass es mit einem int** nicht funktioniert.
btw, täusche ich mich, oder kann es sein, daß in letzter Zeit viele Korinthen gekackt werden?
Definitiv, wen interessiert sowas nebensaechliches schon.