Hallo. Habe einen Ringspeicher und darin befinden sich hintereinander Zeichenketten. Also alle mit einem NULL terminiert. Nun kann es passieren, dass am Ende des Speichers, keine ganze Zeichenkette mehr platz findet und so wird sie aufgeteilt. Ihr Anfang steht am Ende des Speichers und der Rest von Ihr setzt sich am Anfang des Speichers fort. Wenn ich nun mit sscanf eine Zeichenkette nach der anderen rauslese, ist alles ok, bis zu dem Punkt an dem die "aufgeteilte" Zeichenkette dran kommt. sscanf liest wohl alles bis NULL. Da aber am Ende meines Speichers ein NULL sitzt, oder eben ein nicht initialisierter Speicherbereich. Meistens jedoch ein NULL, denkt sscanf, da wäre meine Zeichenkette zu Ende. Falls jemand verstanden hat was ich meine würde ich gerne lesen ob es eine Lösung oder einen anderen Ansatz gibt für dieses Problem. Danke u. Gruß luke
Lösung 1: Für sscanf in einen extra Puffer kopieren Lösung 2: spezielles sscanf selber schreiben Lösung 3: fscanf nehmen, einen Datei-Stream simulieren (geht glaub nur Betriebsystemabhängig) Lösung 4: Die Hardware (MMU) so programmieren, dass der Anfang des Ringpuffers auch hinter dem Ringpuffer wieder eingeblendet wird.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.