Estaba analizando el codigo del ejercicio 4 parte V removeAll y la explicacion del video, pero me surgen 2 dudas, si el ejercicio pide que devuelva la lista sin los elementos eliminados la funciona debe comenzar por "lista" en lugar de void ¿no? y otra duda es, ¿que pasa si el elmento esta justo en la ultima posicion? ya que al ver el if(lpos->ant !=NULL){ lpos->ant->sig = lpos->sig; } entiendo que lpos->ant->sig quedaria apuntado a NULL entonces no entraria al if(lpos->sig !=NULL) para eliminar el elemento. ¿estoy entendiendo mal este caso?
Escribi el codigo asi guiandome del video: