In Datei navigieren mit fgetpos / fsetpos
-
Hallo zusammen
ich habe folgendes problem
Ich muss in einer Datei die ich zeilenweise auslesen hin und her springen
da einige aktionen davon abhängen, was in der nächsten zeile steht.
z.B:while(fgets(buffer,1024,Pfad) != NULL) { zeile=buffer; if(zeile.Find("x") { fgets(buffer,1024,Pfad); zeile2=buffer; if(zeile2.Find("Y") { } else { fgetpos(Pfad, &pos-1); fsetpos(Pfad, &pos); } } }
So mein Problem ist das er mit der Lösung nicht nur eine Zeile zurück geht sondern wieder ans dateiende. Und bei setpos(Pfad, $pos-1) macht er ganz wirre Sachen.
Ich hoffe mir kann jemand helfen
Mfg Rion
-
fgetpos(Pfad, &pos-1); fsetpos(Pfad, &pos);
Was ist das denn?
Du übergibst fgetpos die Adresse von pos minus 1. Du überschreibst also Speicher der nicht zu pos gehört.
-
Dieser Thread wurde von Moderator/in dEUs aus dem Forum MFC (Visual C++) in das Forum ANSI C verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
ups
na dann ist mir einiges klarer
hab auch schon ne lösung gefunden ist auch ganz simpel
manchmal sieht man den Wald vor lauter bäumen nichtAber Danke nochmals