credo che vada bene...
passi la lista alla funzione e questa deve lavorarci sopra, magari ordinandola...quindi è un parametro di ingresso uscita!!
Non so se ricordo bene, ma credo che in genere l'allocazione di una struct viene fatta attraverso new e quindi passare la struct dovrebbe significare passare alla funzione un puntatore..