es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tag: SINGLY-LINKED-LIST

Doble liberación detectada en tcache 2.

La pregunta pide eliminar los nodos de datos pares de una lista enlazada simple. Este es mi fragmento de código: void deleteEven (node **head){ node *prev, *curr,*del; curr=*head; prev=NULL; while(curr!=NULL){ if((curr->data)%2==0){ if(prev==NULL) { del=curr; *head=curr->next; } else { del=curr; prev->next=curr->next; } free(del); } else { prev=curr; curr=curr->next; } } } . . . Read more

Eliminar nodo(s) de una lista enlazada simple en c.

Creé una lista enlazada simple que acepta valores de entrada. Intenté eliminar algunos nodos de la entrada, pero el código no se está ejecutando como se pretende. Aquí está mi código: #include <stdio.h> #include <stdlib.h> struct NODE { int value; struct NODE *prev; }; struct NODE* head = NULL; void . . . Read more

El puntero de cabeza original no se modifica en la función printList, pero la lista cambia al insertar un nodo.

He leído estos dos posts/respuestas sobre el uso de dobles punteros/pasar por referencia: https://stackoverflow.com/questions/22577711/when-printing-out-a-linked-list-why-is-the-original-head-pointer-not-changed https://stackoverflow.com/questions/3313233/linked-list-head-double-pointer-passing pero aún hay algo que me confunde. El puntero head en la función printList (con un recorrido head = head->next) no cambia en main, porque aunque lo pasamos por referencia, la función recibe una copia . . . Read more