Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Problema lista con punteros

Estas en el tema de Problema lista con punteros en el foro de C/C++ en Foros del Web. Hola verán, estoy haciendo una lista dinámica (una Cola), en que controlo las vidas de unos zombies (Se que suena un poco parida xD), lo ...
  #1 (permalink)  
Antiguo 24/03/2012, 08:43
 
Fecha de Ingreso: mayo-2008
Mensajes: 315
Antigüedad: 16 años, 6 meses
Puntos: 7
Problema lista con punteros

Hola verán, estoy haciendo una lista dinámica (una Cola), en que controlo las vidas de unos zombies (Se que suena un poco parida xD), lo suyo es que funciona como cualquier lista simplemente comprueba cuales no tienen vida y los borra de la lista, el problema me surge en el primer Zombie, que el programa me peta, cuando compruebo que no tienen anterior.

Código PHP:
void ControlarVidas(struct zombies *primerZombie){
    
struct zombies *anteriorZombie,*actualZombie,*borrar;
    
actualZombie=primerZombie;
    
anteriorZombie=NULL;
        while(
actualZombie!=NULL){
            if(
actualZombie->vida==0){
                if(
anteriorZombie==NULL){
                    
borrar=actualZombie;
                    
primerZombie=actualZombie->seguent;

                    
free(borrar);

                    
actualZombie=primerZombie;
                } else {
                    
borrar=actualZombie;
                    
anteriorZombie->seguent=actualZombie->seguent;
                    
actualZombie=actualZombie->seguent;

                    
free(borrar);
                }
            }
            
anteriorZombie=actualZombie;
            
actualZombie=actualZombie->seguent;
        }

    } 
PD: La parte de codigo que no me funciona es desde "if(anteriorZombie==NULL) hasta else", me pueden decir si es correcto, o en caso de no serlo. Personalmente creo que el error es anterior a este paso pero entonces no entiendo porque me muestra en la lista. Gracias
  #2 (permalink)  
Antiguo 24/03/2012, 08:59
 
Fecha de Ingreso: mayo-2008
Mensajes: 315
Antigüedad: 16 años, 6 meses
Puntos: 7
Respuesta: Problema lista con punteros

Ya se cual era el error perdonen, tenia que pasar el puntero como una referencia (puntero de puntero) porque sino no podía eliminar el valor del mismo.

Etiquetas: funcion, lista, programa, punteros, struct
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:01.