![]() |
[c++] mehrdimensionales dynamisches Array
Hi DP'ler. Ich habe so viele Fragen zu C++, aber da die meisten DP'ler auch C++ programmieren denke ich das mir hier immer gut geholfen wird :)
Ich versuche eine nxn Matrix einzulesen, wobei n zur Laufzeit eingelesen werden soll. Ich habe folgendes Problem beim einlesen: Hier erstelle ich das Array.
Code:
Wenn ich das Array mit 0 fülle, dann klappt alles.
int **f2 = new int*[n]; //erstelle 2dim dynamisches Arrray
for(int i=0;i<n;i++) //weise Speicheradressen zu { f2[i] = new int[n]; }
Code:
Aber wenn ich den Benutzer die Daten einlesen lassen will, meckert der Compiler.for(int i=0;i<n;i++) //Benutzerein- ausgabe { for(int j=0;j<n;j++) { f2[i][j]=0; } }
Code:
Kann mir da jemand helfen?for(int i=0;i<n;i++) //Benutzerein- ausgabe { for(int j=0;j<n;j++) { cout << "M: n" << i << ", " << j << "\n"; cin << f2[i][j]; cout << "\n"; } } Gruß |
Re: [c++] mehrdimensionales dynamisches Array
Zitat:
|
Re: [c++] mehrdimensionales dynamisches Array
Guck dir cin an!!! und dann guck dir mal andere Beispiele mit cin an
Gruß |
Re: [c++] mehrdimensionales dynamisches Array
Ich sags ma so:
cin >> dann hier die Variable. Du hast aber << gemacht, das sollte der Fehler sein. |
Re: [c++] mehrdimensionales dynamisches Array
Ja danke das war der Fehler :D
Also ich habe echt Probleme damit bei C++ zu debuggen, weil ich es bei Delphi besser gewohnt bin. Hier bekomme ich im glücklichsten Fall einen kleinen Hinweis, dass vllt ein ; vergessen wurde, aber jetzt z.B. gab es keinen Hinweis und es gab 49 Fehlermeldungen. Ich habe 3 Entwicklungsumgebungen (Eclipse, DevC++, Visual C++). Bin ich zu blöd, oder ist es wirklich so? Danke für den Hinweis :cheers: Gruß :) |
Re: [c++] mehrdimensionales dynamisches Array
C++ is halt so^^
Fehlerbehebung war der Grund warum ich zu Delphi ging. In C++ ist sauber arbeiten Elemantar, in Delhi auch nur dass man dort häufig noch geholfen bekommt. |
Re: [c++] mehrdimensionales dynamisches Array
Zitat:
Gruß |
Re: [c++] mehrdimensionales dynamisches Array
Zitat:
|
Re: [c++] mehrdimensionales dynamisches Array
Ich hab mir mal die Fehlerausgabe in Visual C++ 2005 angeschaut, die Ausgabe ist eigentlich eindeutig.
Zitat:
|
Re: [c++] mehrdimensionales dynamisches Array
Darf ich nebenbei darauf hinweisen, daß für dynamische Arrays in C++ tunlichst std::vector verwendet werden sollte? Dadurch kann man die Zeit, die man sonst für das Debuggen des Zeigercodes aufwenden müßte, in andere Teile investieren.
Code:
Noch besser wäre es freilich, wenn du dir eine Klasse für 2D-Arrays schreiben würdest ;)
#include <vector>
... typedef std::vector <std::vector <int> > array2d_t; // zwecks Übersichtlichkeit array2d_t array2d; array2d.resize (dimension1); for (array2d_t::iterator i = array2d.begin (), e = array2d.end (); i != e; ++i) i->resize (dimension2); ... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz