Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- _nodoFechasEspeciales *eliminarFechasEspeciales(char materia[], _nodoFechasEspeciales *apuntador)
- {
- //INTENTO DE BORRAR NODO 1
- if (!listaVaciaFechas(apuntador))
- {
- _nodoFechasEspeciales *borrarAuxiliar;
- _nodoFechasEspeciales *anterior = NULL;
- borrarAuxiliar = apuntador;
- while (borrarAuxiliar != NULL && strcmp(borrarAuxiliar->nombre, materia) != 0)
- {
- anterior = borrarAuxiliar;
- borrarAuxiliar = borrarAuxiliar->siguiente;
- }
- if (borrarAuxiliar == NULL)
- {
- printf("nNODO NO ENCONTRADO");
- }else if (anterior == NULL)
- {
- apuntador = apuntador->siguiente;
- free(borrarAuxiliar);
- } else
- {
- anterior->siguiente = borrarAuxiliar->siguiente;
- free(borrarAuxiliar);
- }
- }
- return apuntador;
- }
- while (borrarAuxiliar != NULL && strcmp(borrarAuxiliar->nombre, materia) != 0)
- {
- anterior = borrarAuxiliar; borrarAuxiliar = borrarAuxiliar->siguiente;
- }
- if (borrarAuxiliar == NULL)
- {
- printf("nNODO NO ENCONTRADO");
- }
- else if (anterior == NULL)
- {
- apuntador = apuntador->siguiente;
- free(borrarAuxiliar);
- }
- else
- {
- anterior->siguiente = borrarAuxiliar->siguiente;
- free(borrarAuxiliar);
- }
- while (apuntador != NULL)
- {
- if( strcmp(apuntador->nombre, materia) == 0)
- {
- anterior->siguiente = apuntador->siguiente;
- _nodoFechasEspeciales* borrarAuxiliar = apuntador;
- apuntador = apuntador->siguiente;
- free(borrarAuxiliar);
- }
- else
- {
- anterior = apuntador;
- apuntador = apuntador->siguiente;
- }
- }
- _nodoFechasEspeciales *eliminarFechasEspeciales(char materia[], _nodoFechasEspeciales *apuntador) {
- // ...
- return apuntador;
- }
- _nodoFechasEspeciales *eliminarFechasEspeciales(char materia[], _nodoFechasEspeciales *apuntador) {
- _nodoFechasEspeciales* ptr = apuntador;
- _nodoFechasEspeciales* anterior = NULL;
- while (ptr != NULL)
- {
- if( strcmp(ptr->nombre, materia) == 0)
- {
- if( anterior )
- anterior->siguiente = ptr->siguiente;
- else
- apuntador = ptr->siguiente; // el primer elemento de la lista se elimina
- _nodoFechasEspeciales* borrarAuxiliar = ptr;
- ptr = ptr->siguiente;
- free(borrarAuxiliar);
- }
- else
- {
- anterior = ptr;
- ptr = ptr->siguiente;
- }
- }
- return apuntador;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement