Buonasera.
Volevo:
-leggere dati da un file ("deposito.txt") così composto:
codice1 numero_codice1
codice2 numero_codice2
.. ;
-inserire i dati in una adeguata struttura.
La funzione che ho implementato, però , inserisce nelle strutture:codice:#include<stdio.h> #include<stdlib.h> #include<string.h> typedef struct{ char *code; int num; }prodotto; int main(){ prodotto *sp=malloc(5*sizeof(prodotto)); FILE *fp=fopen("deposito.txt","r"); int i,lenght,n=5; char buff[1000],temp[1000]; for(i=0;i<n;i++){ fgets(buff,sizeof(buff),fp); sscanf(buff,"%s %d",temp,&((sp+i)->num)); lenght=strlen(temp)+2; ((sp+i)->code)=(char*)malloc(lenght*sizeof(char)); ((sp+i)->code)=temp; } for(i=0;i<n;i++) printf("\nprodotto: %s , numero:%d\n",(sp+i)->code,(sp+i)->num); return 0; }
-il codice dell'ultimo elemento della lista,
-i numeri adeguati.
Perché?

Rispondi quotando