Kann mir das bitte jemand erklären?

hallo ich habe mit dieser loop eine zeile aus einer datei lesen wollen

 for ( int pin=0;!user1.eof();pin++){
 if (pin==5){
 echte\_pin=atoi(inhalt\_pin.c\_str());
 }
 }

als das nicht funktionierte habe ich bei stackoverflow nach gefragt. dort hat man mir empfohlen

 else
 getline(user1, inhalt\_guthaben);

reinzuschreiben das man folgenden code erhält

 for ( int pin=0;!user1.eof();pin++){
 if (pin==5){
 echte\_pin=atoi(inhalt\_pin.c\_str());
 }

 else
 getline(user1, inhalt\_guthaben);

 }

nun hat es funktioniert, schön und gut aber warum???

ich vertehe es nicht.

ich hoffe ihr könnt mir weiter helfen.

Hi,

Also bei deinem oberen Code wird bei pin == 5 zum ersten Mal was aus der Datei ausgelesen - also erhälst du die erste Zeile. Wenn ich das aber richtig sehe, willst du mit dieser Konstruktion die 5. Zeile parsen. D.h. du musst alle Zeilen davor wegwerfen - und das wird in dem 2. Programm in dem else-Teil gemacht…

Beantwortet das deine Frage?

Viele Grüße

Manny

ahh ok danke habs verstanden. :smiley:

grüße
globus