R
ah, jetzt versteh ichs, danke.
Ich hab ganz vergessen, dass der -> schon den Dereferenzierungsoperator enthält. Und bei person->vorname geht es weil da der Zeiger auf eine Zeichenkette zeigt, richtig?
Und mit sinnlos einlesen meinte ich eigentlich den Kommentar von chille07
char help;
scanf("%d%c",person.alter,&help);
Das Einlesen des Dateinamens hab ich jetzt auch aus der for-Schleife rausgenommen, das sollte da eigentlich auch gar nicht rein. Es sollten natürlich alle Personen in einer Datei gespeichert werden.
Aber was mir noch völlig unklar ist, wie das mit dem Zeichen tauschen funktioniert. An der Stelle bricht das Programm nämlich jetzt ab.
Der Grund für die Funktion ist, falls z.B. ein Strassenname eine Lücke enthält, dass dieser später bei fscanf nicht als zwei Wörter gesehen wird.
Wenn mir da noch einer helfen könnte wäre ich überglücklich