Ho sostituito alla scanf dell'username, la fgets, ma mi da errore:
codice:
#include <stdio.h>
#include <stdlib.h>
#define USER_FILE "user.txt"
typedef struct{
char user[30];
char pass[30];
char email[50];
int age;
} user;
int main(void){
FILE *fp;
user u;
if (!(fp=fopen(USER_FILE,"a"))){
printf("Errore\n");
exit(1);
}
printf ("Inseririmento di un nuovo utente: \n\n");
printf ("Username: ");
fgets(user,sizeof(user),*fp);
printf ("Password: ");
scanf ("%s",u.pass);
printf ("Email: ");
scanf ("%s",u.email);
printf ("Eta': ");
scanf ("%d",&u.age);
/* Scrivo i dati sul file */
fprintf(fp, "%s\t%s\t%s\t%d\n", u.user, u.pass, u.email, u.age);
printf("Dati scritti con successo.\n");
fclose(fp);
}
Dov'è che sbaglio?