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
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]
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden