Jimmie Geschrieben 17. September 2007 Geschrieben 17. September 2007 Hallo, ich habe ein kleines Problem und suche immer noch des Rätsels Lösung. Und zwar erstelle ich vier Arrays aus einer Matrix mat[r][c] mit r für die Reihe und C für die Spalte. Jedes Array soll dann die Spalte dieser Matrix in sich haben. Jedoch wirft mir der Abruf dieses Arrays nur die letzte eingetragene Spalte aus. Zeig das mal am Code: void Matrix::sort_matrix(){ for (int r = 0 ; r < row ; r++){ SpalteA[r]= mat[r][0]; //cout << A[r]<< " " << mat[r][0]<<"\n"; } for (int s = 0 ; s < row ; s++){ SpalteB= mat[1]; //cout << B<< " " << mat[1]<<"\n"; } for (int t = 0 ; t < row ; t++){ SpalteC[t]= mat[t][2]; //cout << C[t]<< " " << mat[t][2]<<"\n"; } for (int v = 0 ; v < row ; v++) cout << SpalteA[v] << " "; cout << "\n"; for (int u = 0 ; u < row ; u++){ SpalteD= mat[3]; //cout << D<< " " << mat[3]<<"\n"; } } So wenn jetzt die Spalte A nach der dritten Zuweisung abrufe, zeigt er mir aber die SpalteC. Ich denke, das irgendetwas mit der Zuweisung falsch läuft! Kann mir jemand helfen und mir meinen Fehler aufdecken?! Gruss und Dank Jimmie Zitieren
Klotzkopp Geschrieben 17. September 2007 Geschrieben 17. September 2007 Ich denke, das irgendetwas mit der Zuweisung falsch läuft! Und ich denke, dass du mindestens eins der Arrays zu klein angelegt hast. Zeig doch mal die Deklarationen. Und welchen Wert hat row? Und überhaupt: Warum packst du das nicht alles in eine Schleife? void Matrix::sort_matrix(){ for (int r = 0 ; r < row ; r++){ SpalteA[r]= mat[r][0]; SpalteB[r]= mat[r][1]; SpalteC[r]= mat[r][2]; SpalteD[r]= mat[r][3]; } } [/code] Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.