Ciao a tutti volevo creare una lista doppiamente concatenata dove posso gestire oltre che a puntatore next a un puntatore prev che ritorna il valore che sta prima di un nodo.
Il mio problema è che non so come gestire il "prev". Come faccio ad assegnare i valori di prev? Vi mostro cosa ho fatto fin ora
codice:
#include <stdio.h>
struct elemento{
int info;
struct elemento *next;
struct elemento *prev;
};
struct elemento *crealista(){
struct elemento *p;
printf("Quanti elementi vuoi agigungere?\n");
int n;
scanf("%d",&n);
printf("Scrivi %d elementi \n",n);
int i;
for(i=0; i<n; i++){
p=(struct elemento*)calloc(sizeof(struct elemento),sizeof(struct elemento));
printf("scrivi l'elemento %d :",i);
scanf("%d",&p->info);
p->prev=(&p->info); //QUA STO TIRANDO A CASO
p=p->next;
return p;
}
}