Inhalt eines Array zählen
-
Hallo,
in einem C++ Programm möchte ich ein Wort aus einer Datei einlesen. Das Wort soll dann in einem Array gespeichert werden. Wie kann ich feststellen wie groß das Wort bzw das Array ist?
Mfg Falko
-
Kannst du die Frage mal etwas klarer formulieren? Was für ein Wort? Was für ein Array?
PS: Anstelle von Arrays würde ich lieber std::vector<> oder std::string verwenden, die sind einfacher in der Handhabung.
-
Hi,
das Wort ist ein zufälliges Wort aus einer Liste. Deswegen ist die Länge auch unbekannt. Ich würde dann ein Array erstellen und die einzelnen Buchstaben in jeweils ein Element des Array schreiben.
Mfg Falko
-
Antic23 schrieb:
das Wort ist ein zufälliges Wort aus einer Liste. Deswegen ist die Länge auch unbekannt. Ich würde dann ein Array erstellen und die einzelnen Buchstaben in jeweils ein Element des Array schreiben.
Bei einem Array kannst du die Größe garnicht bestimmen, zudem hat ein Array eine feste Größe. Wenn du aber aus einer Datei einliest würde ich einen Container wie den besagten std::vector empfehlen, der bei Bedarf wachsen kann. Und wenn du dann für die Wörter (wohl strings) noch std::string verwendest kannst du auch auf dessen Methoden zugreifen...
Beispiele zu den Beiden Themen gibt es in der hiesigen C++ FAQ genug (sowohl wie man Container aus Dateien befüllt als auch zu der Stringverarbeitung).
Falls du alternativ bei char* und einem Array bleiben willst, solltest du lieber im C-Forum nachfragen ;).
cu André
-
Und was ist das für eine Liste, aus der du das Wort herausholst? (vielleicht sollte ich mir zu Weihnachten doch eine neue Kristallkugel wünschen)
Nochmal: nimm lieber Containerklassen wie vector<> oder string - die kümmern sich selber um ihren Speicherplatz und bieten dir auch die Möglichkeit zu fragen, wie groß sie sind.
-
Erstmal Danke für die schnelle Hilfe!
Ich werd mir string & vector mal genauer anschauen.
PS: Hab hier noch ne Kristallkugel liegen, die könnt ich dir günstig überlassen. :xmas1: