Hallo !
Ich stehe vor einer Aufgabe, Variablen, die sich im Lauf eines Programms
durch Berechnungen oder Dateilesen ergeben, in Arrays zu speichrern.
Egal, ob das Strings, Floats uva sind, ist es kein Problem,
wenn das Array im voraus genügend Platz hat.
Ich kenne jedenfalls die Anzahl der Arrayelemente zum Programmstart nicht.
Meine Ideallösung wäre jedes Array mit einem Element im Sack zu deklarieren, z.B. :
string WORT[1];
double zahl[1];
und nach Bedarf den Arrayrahmen zu erweitern.
Meine Versuche waren nur dann gelungen, wenn ich z.B.ein Element an ein bekanntes Array "angehängt" habe, zB. string Array WORT mit einem Element:
string WORT[1];
dem ersten Element wird der Sinn des Lebens zugewiesen :
WORT[0]="Hallo";
Nach einer Laufzeit findet sich schöne Euridike und das Array kriegt zwei neue Elemente :
WORT[1]= " ";
WORT[2]="Euridike";
Solche Versuche haben bei mir schon gute Ergebnisse gezeigt,
ich konnte zur Bestätigung das Ganze mit cout ausgeben.
In den Schleifen (mit for(int i:0; i<ende; i++ )) scheitert es.
Warum ?
Meistens wird das Ende nicht erreicht und das System bricht das Programm ab.
Es geht im konkreten Fall um Einlesen
von früher nicht bekannter Anzahl von z.B. Wörtern (string) mit einem Stream.
Ein schönes sonniges Wochenende !
Ich stehe vor einer Aufgabe, Variablen, die sich im Lauf eines Programms
durch Berechnungen oder Dateilesen ergeben, in Arrays zu speichrern.
Egal, ob das Strings, Floats uva sind, ist es kein Problem,
wenn das Array im voraus genügend Platz hat.
Ich kenne jedenfalls die Anzahl der Arrayelemente zum Programmstart nicht.
Meine Ideallösung wäre jedes Array mit einem Element im Sack zu deklarieren, z.B. :
string WORT[1];
double zahl[1];
und nach Bedarf den Arrayrahmen zu erweitern.
Meine Versuche waren nur dann gelungen, wenn ich z.B.ein Element an ein bekanntes Array "angehängt" habe, zB. string Array WORT mit einem Element:
string WORT[1];
dem ersten Element wird der Sinn des Lebens zugewiesen :
WORT[0]="Hallo";
Nach einer Laufzeit findet sich schöne Euridike und das Array kriegt zwei neue Elemente :
WORT[1]= " ";
WORT[2]="Euridike";
Solche Versuche haben bei mir schon gute Ergebnisse gezeigt,
ich konnte zur Bestätigung das Ganze mit cout ausgeben.
In den Schleifen (mit for(int i:0; i<ende; i++ )) scheitert es.
Warum ?
Meistens wird das Ende nicht erreicht und das System bricht das Programm ab.
Es geht im konkreten Fall um Einlesen
von früher nicht bekannter Anzahl von z.B. Wörtern (string) mit einem Stream.
Ein schönes sonniges Wochenende !