Eccovi il programma:
Il problema sta nella funzione creapunteggio, il compilatore mi dice "undefined reference to "creapunteggio". Come mai?codice:#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct classifica* classific; struct classifica{ char* squadra; int punti; classific succ; }; typedef struct punteggi* squadre; struct punteggi{ char* casa; char* ospite; int goalc; int goalo; squadre next; }; squadre inseriscicoda(squadre il, char* casa, char* ospite, int goalc, int goalo,classific classi); void creapunteggio(squadre il,classific classi); void stampasquadre(squadre il); int main(int argc, char *argv[]) { squadre il; classific classi; il=NULL; classi=NULL; char* squadra; char* squadradue; int goal; int goaldue; squadra=malloc(sizeof(char)*256); squadradue=malloc(sizeof(char)*256); FILE* fp; fp=fopen("squadre.txt","r"); if(fp==NULL){ printf("Errore nell'aperture del file\n"); return 0;} while(!feof(fp)) { fscanf(fp,"%256[^ ] %256[^ ] %d %d\n",squadra,squadradue,&goal,&goaldue); il=inseriscicoda(il,squadra,squadradue,goal,goaldue,classi); if (il==NULL) { il=malloc(sizeof(struct punteggi));il->next=NULL; il->casa=malloc(sizeof(char)*256); il->ospite=malloc(sizeof(char)*256); strcpy(il->casa,squadra); strcpy(il->ospite,squadradue); il->goalc=goal; il->goalo=goaldue; crepunteggio(il,classi); } } stampasquadre(il); system("PAUSE"); return 0; } squadre inseriscicoda(squadre il, char* casa, char* ospite, int goalc, int goalo,classific classi) { if(il==NULL) return il; squadre t=il; while(t->next!=NULL) t=t->next; squadre nuovo; nuovo=malloc(sizeof(struct punteggi)); nuovo->next=NULL; nuovo->casa=malloc(sizeof(char)*256); nuovo->ospite=malloc(sizeof(char)*256); strcpy(nuovo->casa,casa);strcpy(nuovo->ospite,ospite);nuovo->goalc=goalc;nuovo->goalo=goalo; creapunteggio(nuovo,classi); t->next=nuovo; return il;} void creapunteggio(squadre il,classific classi) { classific t=classi; if (t==NULL) t=malloc(sizeof(struct classifica)); } void stampasquadre(squadre il) { while(il!=NULL){ printf("%s->%s->%d->%d\n",il->casa,il->ospite,il->goalc,il->goalo); il=il->next;}}

Rispondi quotando
