Salve a tutti!
Vorrei un chiarimento sul comando typedef.So che è un alias,cioè se scrivo

codice:
typedef double doppio;
posso dichiarare variabili di tipo double scrivendo doppio anzichè double;non capisco il funzionamento in questo caso:

codice:
struct  cella {
                  int valore;
                  cella* succ;
               }; 

typedef cella* lista;
typedef cosa sta ad indicare?Il suo uso è sempre consigliato?

Ringrazio in anticipo per la risposta!