starflighter
Cadet 3rd Year
- Registriert
- Juni 2013
- Beiträge
- 39
Hallo,
ich versuche gerade ein Programm zu schreiben, welches aus einer beliebig großen (String)Datei die Anzahl der Zeilen zählt, daraufhin ein zeilenweises Array erstellen soll.
Ich habe es zuerst mit einem String Vektor probiert, aber dort ging es nur wortweise, für mich damit leider unbrauchbar.
Auf jeden Fall ist es jetzt so, dass sich nach dem Zählen der Zeilen das Programm beendet, nur ich kann mir nicht erklären wieso?
Kann mich jemand wieder auf den rechten Weg bringen ??
Danke und Gruß
starflighter, der C++ Anfänger
ich versuche gerade ein Programm zu schreiben, welches aus einer beliebig großen (String)Datei die Anzahl der Zeilen zählt, daraufhin ein zeilenweises Array erstellen soll.
Ich habe es zuerst mit einem String Vektor probiert, aber dort ging es nur wortweise, für mich damit leider unbrauchbar.
Auf jeden Fall ist es jetzt so, dass sich nach dem Zählen der Zeilen das Programm beendet, nur ich kann mir nicht erklären wieso?
Kann mich jemand wieder auf den rechten Weg bringen ??
Code:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
string sZeile;
int iAnzahl = 0;
int iZaehler = 0;
//Datei mit Pfad
ifstream ifsDatei("/home/user/Schreibtisch/abc.txt");
if (!ifsDatei)
{
cout << "Erstmal nen gueltigen Pfad, sonst wird das NIX!" << endl;
return 1;
}
else
{
//Zeilen zählen
while(getline(ifsDatei, sZeile))
{
iAnzahl++;
}
//Array deklarieren
string saTextarray[iAnzahl];
//Datei zeilenweise in Array einlesen
while (getline(ifsDatei, sZeile))
{
for (iZaehler=0; iZaehler<iAnzahl; iZaehler++)
{
saTextarray[iZaehler] = sZeile;
//cout << saTextarray[iZaehler]<<endl;
}
}
}
//Programm beenden
return 0;
}
Danke und Gruß
starflighter, der C++ Anfänger