Advertisement
Guest User

Untitled

a guest
Nov 23rd, 2017
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.15 KB | None | 0 0
  1. atleti **leggifile(int *N){
  2. int i;
  3. int aa,mm,gg,ore;
  4. atleti **atl;
  5. atleti *rif;
  6. char b_nome[40],b_cogn[40],b_cod[40],b_sport[40],b_data[40];
  7. FILE *fp;
  8. if((fp=fopen("atleti.txt","r"))==NULL){
  9. printf("Errore apertura file atleti");
  10. exit(1) ;}
  11. fscanf(fp,"%d",N);
  12. rif=malloc(*N*sizeof(atleti));
  13. atl=malloc(*N*sizeof(rif));
  14. for(i=0;i<*N;i++){
  15. atl[i]=&rif[i];
  16. }
  17. for(i=0;i<*N;i++){
  18. fscanf(fp,"%s %s %s %s %s %d",b_cod,b_nome,b_cogn,b_sport,b_data,&ore);
  19. atl[i]->ore_all=ore;
  20. atl[i]->nome=malloc((strlen(b_nome)+1)*sizeof(char));
  21. strcpy(atl[i]->nome,b_nome);
  22. atl[i]->codice=malloc((strlen(b_cod)+1)*sizeof(char));
  23. strcpy(atl[i]->codice,b_cod);
  24. atl[i]->cognome=malloc((strlen(b_cogn)+1)*sizeof(char));
  25. strcpy(atl[i]->cognome,b_cogn);
  26. atl[i]->sport=malloc((strlen(b_sport)+1)*sizeof(char));
  27. strcpy(atl[i]->sport,b_sport);
  28. if(atl[i]->nome==NULL || atl[i]->cognome==NULL || atl[i]->codice ==NULL || atl[i]->sport == NULL || atl[i]->data ==NULL){
  29. printf("errore allocazione");
  30. }
  31. sscanf(b_data,"%d/%d/%d",&gg,&mm,&aa);
  32. sprintf(atl[i]->data,"%d/%d/%d",aa,mm,gg);
  33. }
  34. return atl;
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement