Nel ciclo for se voglio inserire più di un elemento, il primo mi fa mettere i campi prior e dato senza alcun problema, ma dals econdo in poi mi va in segmentation fault nel punto in cui fa la malloc per elem ( prima istruzione del for ). Come mai ?
codice:
struct elemento{
int prior;
int dato;
};
typedef struct elemento elem;
struct infor{
int size;
struct elemento *first;
};
typedef struct infor heap;
int main(){
elem **vet;
heap *A;
int n,i;
printf("\n\n Digita il numero di elementi che vuoi inserire : \n\n");
scanf("%d",&n);
vet=(elem **)malloc(n*sizeof(elem *));
for(i=0;i<n;i++){
vet[i]=(elem *)malloc(sizeof(elem));
printf("\n\n Digita il valore della %d priorita' : ", i);
scanf("%d",vet[i]->prior);
getchar();
printf("\n\n Digita il valore del %d dato : ", i);
scanf("%d",vet[i]->dato);
getchar();
}
printf("\n\n La prima priorita' vale : %d : ",vet[0]->prior);
system("PAUSE");
return 0;
}