Mi sono permesso di sistemarti il codice, con il problema della testa, ciao.
codice:
#include <stdio.h>
#include <stdlib.h>
#define NUM 10
struct lista_elem {
int code;
struct lista_elem *next;
};
typedef struct lista_elem lista_elem_t;
int main()
{
lista_elem_t *testa, *p;
int i;
testa = p = (lista_elem_t *)malloc(sizeof(lista_elem_t));
p->code = 0;
for (i = 1; i < NUM; i++) {
p->next = (lista_elem_t *)malloc(sizeof(lista_elem_t));
p = p->next;
p->code = i;
p->next = NULL;
}
for (p = testa; p != NULL; p = p->next)
printf("code: %d\n", p->code);
return 0;
}