Quando compilo mi da questo errore:codice:#include <stdio.h> #include <stdlib.h> #define n 10 struct elemento creaLista(); void stampaLista(struct elemento *); struct elemento { int inf; struct elemento *ptr; }; struct elemento creaLista() { struct elemento *p,*punt; int i; if(n==0) //Se gli elementi della lista saranno 0 creiamo una lista vuota p=NULL; else { p=(struct elemento*)malloc(sizeof(struct elemento)); puts("Inserisci il primo valore:"); scanf("%d",&p->inf); punt=p; for(i=2;i<=n;i++) { punt->ptr=(struct elemento*)malloc(sizeof(struct elemento)); punt=punt->ptr; printf("Inserisci il %d elemento:\n",i); scanf("%d",&punt->inf); } punt->ptr=NULL; //fine della lista } return (*p); } void stampaLista(struct elemento*p) { while(p!=NULL) { printf("%d",p->inf); puts("--->"); p=p->ptr; } } int main(void) { struct elemento *lista; lista=creaLista(); stampaLista(lista); }
A cosa è dovuto?codice:48: error: incompatible types when assigning to type ‘struct elemento *’ from type ‘struct elemento’

Rispondi quotando
