Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- atleti **leggifile(int *N){
- int i;
- int aa,mm,gg,ore;
- atleti **atl;
- atleti *rif;
- char b_nome[40],b_cogn[40],b_cod[40],b_sport[40],b_data[40];
- FILE *fp;
- if((fp=fopen("atleti.txt","r"))==NULL){
- printf("Errore apertura file atleti");
- exit(1) ;}
- fscanf(fp,"%d",N);
- rif=malloc(*N*sizeof(atleti));
- atl=malloc(*N*sizeof(rif));
- for(i=0;i<*N;i++){
- atl[i]=&rif[i];
- }
- for(i=0;i<*N;i++){
- fscanf(fp,"%s %s %s %s %s %d",b_cod,b_nome,b_cogn,b_sport,b_data,&ore);
- atl[i]->ore_all=ore;
- atl[i]->nome=malloc((strlen(b_nome)+1)*sizeof(char));
- strcpy(atl[i]->nome,b_nome);
- atl[i]->codice=malloc((strlen(b_cod)+1)*sizeof(char));
- strcpy(atl[i]->codice,b_cod);
- atl[i]->cognome=malloc((strlen(b_cogn)+1)*sizeof(char));
- strcpy(atl[i]->cognome,b_cogn);
- atl[i]->sport=malloc((strlen(b_sport)+1)*sizeof(char));
- strcpy(atl[i]->sport,b_sport);
- if(atl[i]->nome==NULL || atl[i]->cognome==NULL || atl[i]->codice ==NULL || atl[i]->sport == NULL || atl[i]->data ==NULL){
- printf("errore allocazione");
- }
- sscanf(b_data,"%d/%d/%d",&gg,&mm,&aa);
- sprintf(atl[i]->data,"%d/%d/%d",aa,mm,gg);
- }
- return atl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement