geloescht_Kaffeemacher Geschrieben 13. Juli 2003 Geschrieben 13. Juli 2003 Good Morning @all, kann man während der Laufzeit eines Programms die Arrayelemente ändern? Zum Beispiel ich deklariere ein zweidimensionales Array mit dem Namen text[10][80] merke aber zu einem Späteren Zeitpunkt, das Array ist zu klein und verändere dann den Wert. text[10][90] Könnt ihr mir da vielleicht weiterhelfen? Ich weiss, dass man auch ein Array ohne Elemente deklarieren kann. z.B. text[][] Mich interessiert allerdings ob das auch so funktioniert mit dem späteren verändern und ob die Inhalte des Arrays dann verloren sind oder nicht. thx. kaffeemacher Zitieren
Gast roaxius Geschrieben 13. Juli 2003 Geschrieben 13. Juli 2003 Meines Wissens nach kann man die Werte eines Arrays nicht zur Laufzeit ändern, da der Array beim Komipilieren angelegt wird und der Speicher reserviert wird. Für das, was du machen willst, sprich dynamische Speicherreservierung, gibt es Zeiger :eek: Mit Zeigern kannst du zur Laufzeit immer wieder Speicher reservieren... Sind halt nur ein bißchen einlesungsbedürftig... Damit du dir nicht immer den Speicher abschießt Zitieren
CyberDemon Geschrieben 13. Juli 2003 Geschrieben 13. Juli 2003 Tach! Man kann mit "malloc" Speicherplatz reservieren. Sollte dieser Platz irgendwann zu klein sein, kann man mit "realloc" den Speicherplatz neu allokieren. Zuvor müssen aber alle Daten, die in dem Speicherbereich vorhanden sind woanders gespeichert werden, da sie sonst alle verloren gehen. Wenn ich das falsch erklärt hab, dann berichtigt mich bitte. Zitieren
Gast roaxius Geschrieben 13. Juli 2003 Geschrieben 13. Juli 2003 Original geschrieben von CyberDemon Tach! Man kann mit "malloc" Speicherplatz reservieren. [...][ /B] Ja, aber dabei arbeitet man dann mit Zeigern... Wenn du definierte Arrays hast, dann reservierst du den Speicher zum Zeitpunkt der Kompilierung... Oder vertue ich mich da jetzt??! Zitieren
Goos Geschrieben 13. Juli 2003 Geschrieben 13. Juli 2003 Hi Kaffeemacher, das Zauberwort heisst auch hier mal wieder Suche Da kannst alles ganz ausfuehrlich nachlesen. Es ist allerdings zu bezweifeln, dass es die einfachste Methode ist, wenn man von Hand zur Laufzeit an den Arrays rumbastelt. ...aber gut.....lies ein paar der Suchergebnisse mit vielen Antworten und frag dann weiter wenn noch Fragen offen sind. Goos Zitieren
Knuddlbaer Geschrieben 14. Juli 2003 Geschrieben 14. Juli 2003 std::vector<std::vector<T> > wäre auch eine sehr gute Alternative. Zitieren
nic_power Geschrieben 14. Juli 2003 Geschrieben 14. Juli 2003 Hallo, @Kaffeemacher: Es gibt keine Möglichkeit, Arrays in der von Dir beschrieben Art und Weise zur Laufzeit zu modifizieren. Einzige Möglichkeit ist die Verwendung einer dynamischen Speicherverwaltung (beispielsweise malloc, realloc oder auch eine selbstimplementierte). Nic Zitieren
geloescht_Kaffeemacher Geschrieben 17. Juli 2003 Autor Geschrieben 17. Juli 2003 DANKE FÜR EURE BEITRÄGE IHR HABT MIR SEHR GEHOLFEN GREETZ KAFFEEMACHER 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.