è deallocato bene cosi? ho usato la deallocazione sia sul puntalista che sul secondo puntatore ausliario. Credo di aver capito il concetto.
Codice:
struct lis *cancNum(struct lis *p){
struct lis *paus,*paus2;
while(((p->inf)%2==0)&&(p!=NULL)){paus=p;
p=p->pun;
p->pun=NULL;
free(paus);
}
paus=p;
while(paus!=NULL){
paus2=paus->pun;
if(((paus2->inf)%2==0)){
paus->pun=paus2->pun;
paus2->pun=NULL;
free(paus2);
}
paus=paus->pun;
}
return(p);