void* e' l'unico tipo generico disponibile in C
Ovviamente deve puntare ad un blocco di memoria allocato con una malloc che alla fine dovà essere rilasciato con una free

codice:
typedef struct list {
   void *value;
   struct list *next;
};