Konstanten Wert eintragen

Ich hatte einen Denkfehler im Code!

Der Zugriff auf Zeile i, Spalte j müsste so heißen:
C++:
matrix[cols*i + j] = char(177);
cols repräsentiert die Anzahl der Spalten pro Zeile und
rows die Gesamtanzahl der Zeilen.

Deine Bessere Variante ist super ;)
das Prinzip der Verrechnung bei der Schreibweise verstehe ich leider noch nicht
matrix[rows*i + j];
Du musst dir vorstellen, dass die Matrix in einer Zeile/Reihe steht.
Sodass immer nach cols-Stellen eine neue Zeile kommt. Und in dieser Zeile musst du noch j-Stellen weitergehen.
Eigentlich könnte man die Ausgabe auch vereinfachen:
C++:
/* Ausgabe */
for (int i=0; i<cols*rows; i++)
{
  if (i!=0 && i%cols==0) // Wenn neue Zeile, neue Zeile anfangen ;)
  {
    cout << endl;
  }
  cout << matrix[i] << " ";
}


gibt es eigentlich eine Möglichkeit auf ein Array Feld zuzugreifen durch die Operation array[j-1] ?
Hat jetzt zwar nicht mit der dynamischen Eingabe zu tun, aber wenn wir schon mal beim Thema arrays sind ;)
Wieso nicht?
Du musst nur einen Index (als Zahl) angeben, bei dir ist es eben das Ergebnis der Rechenoperation.
 
Zuletzt bearbeitet:
Zurück