Ma in uno stack non inserisci sempre nell'head? O_o

Comunque come base va bene...
per l'inserimento in testa devi allocare un nuovo oggetto e semplicemente farlo puntare al successivo...
per l'inserimento in coda scorrere tutta la lista fino al null e aggiungerlo...
per il pop prendi l'head e poi sostituisci ad essa head->next tutto qui...