FritziFoppel hat geschrieben:Eine Initialisierung die scheinbar von MinGW akzeptiert wird.
1.) scheinbar!?
2.) Nicht alles, was kompiliert ist sinnvoll.
Du solltest Deinen Quelltext schon verstehen. Selbst wenn er funktioniert ist er solange als falsch zu betrachten, bis Du verstanden hast, warum er zufälligerweise funktioniert und ausschließen kannst, dass er unter anderen als den getesteten Bedingungen auch richtig funktioniert.
FritziFoppel hat geschrieben:Hab mich heute noch mal rangesetzt und gegrübelt. Weiß jetzt was ich machen muss.
Das Problem lag wahrscheinlich wie du schon gesagt hast an der Initialisierung. Die Variable liegt im Header, aber der Compiler nimmt das so an.
Vielleicht postest Du mal die Funktion, die den (int **) übergeben bekommt, damit man nachvollziehen kann, was Du eigentlich vorhast.
Ein Array vergrößert sich nicht und &pointerToInt ist nur dann sinnvoll, wenn Du den Parameter als (int *)-Out-Referenz verwendest.
Da Du offenbar auf die Elemente einzeln zugreifen willst, musst Du ein echtes Array mit int * aufbauen:
Code: Alles auswählen
int row1[] = { 11, 12, 13 };
int row2[] = { 21, 22, 23 };
int row3[] = { 31, 32, 33 };
int * matrix[] = { row1, row2, row3 };
function( matrix );
Du sollstest allerdings auch die Ausmaße des Arrays im Auge behalten.
Code: Alles auswählen
function( matrix, 3 /* rows */, 3 /* elements per row */ );
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.