codice:
cancella(tab2,lung);
Magari è sbagliata questa chiamata, anche perchè non si capisce da dove arrivi questo lung, come l'hai inizializzato?