codice:
while ((ch = fgetc (Ptr) ) == ' ' ) ;   /*riga1*/
persona[i].annoDiNascita = ch ;     /*riga 2 */

fscanf (Ptr , %d\n" , &persona[i].annoDiNascita ) ;
i++ ;
ora non capisco in che modo le righe 1 e 2 possano eliminare gli spazi e leggere il carattere corretto ;
qualcuno può darmi una delucidazione?


grazie
In secondo luogo ti consiglio di strutturare il file di I/O in questo modo:

codice:
carlo
1958
luca
1919
..........
In questo modo leggi TUTTA la riga e non hai il problema degli spazi, poi se volevi risolvere la questione con la fscanf e con gli spazi allora poi vediamo XD