JErikaM
04-01-2012, 15:31
Salve a tutti!
Sono qui ad esporre un altro problema :S
Creazione di un array di liste, per poi potervi fare al suo interno operazioni varie come la ricerca di un valore...
non ho trovato molto materiale sull'argomento array di liste, quindi durante l'implementazione sto riscontrando diversi problemi!
struct cella
{
int valore;
struct cella *next;
};
int main()
{
struct cella *temp;
struct cella *nuovo;
struct cella *testa;
int i;
struct cella *array[3];
for(i=0;i<3;i++)
{
array[i]=NULL;
}
printf("Inserisco gli elementi nella lista 1");
printf("\n");
nuovo = (struct cella*)malloc(sizeof(struct cella)); //ho allocato lo spazio in memoria per la prima cella della lista
nuovo->next = testa;
testa = nuovo;
nuovo = array[0];
//associo a nuovo l'indice 0 dell'array e gli inserisco il valore
scanf("%d", &array[0]->valore);
array[0]->next = array[0]; //sono incerta cosa mettere, sicuramente il passaggio errato è questo (speriamo sia solo questo!)
}
teoricamente a questo punto avrei dovuto avere la possibilità di creare la lista che ha la testa nella cella 0 dell'array e di inserirvi un elemento!
ma non mi si compila, si chiude l'exe dopo poco e da errore!!
sapete aiutarmi?^^
grazie in anticipo!
Sono qui ad esporre un altro problema :S
Creazione di un array di liste, per poi potervi fare al suo interno operazioni varie come la ricerca di un valore...
non ho trovato molto materiale sull'argomento array di liste, quindi durante l'implementazione sto riscontrando diversi problemi!
struct cella
{
int valore;
struct cella *next;
};
int main()
{
struct cella *temp;
struct cella *nuovo;
struct cella *testa;
int i;
struct cella *array[3];
for(i=0;i<3;i++)
{
array[i]=NULL;
}
printf("Inserisco gli elementi nella lista 1");
printf("\n");
nuovo = (struct cella*)malloc(sizeof(struct cella)); //ho allocato lo spazio in memoria per la prima cella della lista
nuovo->next = testa;
testa = nuovo;
nuovo = array[0];
//associo a nuovo l'indice 0 dell'array e gli inserisco il valore
scanf("%d", &array[0]->valore);
array[0]->next = array[0]; //sono incerta cosa mettere, sicuramente il passaggio errato è questo (speriamo sia solo questo!)
}
teoricamente a questo punto avrei dovuto avere la possibilità di creare la lista che ha la testa nella cella 0 dell'array e di inserirvi un elemento!
ma non mi si compila, si chiude l'exe dopo poco e da errore!!
sapete aiutarmi?^^
grazie in anticipo!