Ho cambiato
char * elimina_spazi (char * str)
{
int x=0, y=0, i;
/* elimino il carattere "a capo" al termine della riga */
i = 0;
while(str[i] != '\n') i++;
str[i] = '\0';
for (i=0; i<strlen(str); i++) {
if (str[i]==' ') {
x=i;
y=1;
break;
}
}
// codice che sposta le lettere
if (y==1) {
for (int i2=x; i2<strlen(str); i2++)
str[i2]=str[i2+1];
}
return str;
}
Uso la fgets per leggere l'input
printf("Inserisci luogo di nascita (senza lasciare spazi): ");
fgets(luogo, sizeof(luogo), stdin);
/* elimino il carattere "a capo" */
i = 0;
while(luogo[i] != '\n') i++;
luogo[i] = '\0';
Ma l'errore persiste ossia non mi permette di inserire il luogo
printf("Inserisci luogo di nascita (senza lasciare spazi): ");
ma calcola in automatico il codice fiscale e usa come luogo il codice catastale dell'ultimo paese scritto nel file.