elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Lista ligadas se crashea my programa
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Lista ligadas se crashea my programa  (Leído 1,274 veces)
aurquiel

Desconectado Desconectado

Mensajes: 32



Ver Perfil
Lista ligadas se crashea my programa
« en: 2 Julio 2018, 14:33 pm »

Hola buenos dias estoy intentando implementar una lista en c, mi progrma compila pero se crashea y no consigo el error, si me pudieran dar una mano por favor, arriba dejo mi codigo, gracias.

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. typedef struct tNodo{
  6.    int valor;
  7.    struct tNodo *siguiente;
  8. }Nodo;
  9.  
  10. typedef struct tLista{
  11.    int tamanio;
  12.    struct Nodo *primer;
  13.    struct Nodo *ultimo;
  14. }listaLigada;
  15.  
  16. Nodo *nuevoNodo(int pvalor)
  17. {
  18.    Nodo* nodo = (Nodo*)malloc(sizeof(Nodo));
  19.    nodo->valor = pvalor;
  20.    nodo->siguiente = NULL;
  21.    return nodo;
  22. }
  23.  
  24. listaLigada *nuevaListaLigada(){
  25.    listaLigada *ll = (listaLigada*)malloc(sizeof(listaLigada));
  26.    ll->tamanio = 0;
  27.    ll->primer = NULL;
  28.    ll->ultimo = NULL;
  29.    return ll;
  30. }
  31.  
  32. //operaciones CRUD
  33.  
  34. void add(listaLigada *ll, Nodo *pNodo){
  35.    if(ll->primer == NULL)
  36.        ll->primer = (struct Nodo*)pNodo;
  37.    else
  38.        ll->ultimo = (struct Nodo*)pNodo;
  39.    ll->ultimo = (struct Nodo*)pNodo;
  40.    ll->tamanio++;
  41. }
  42.  
  43. Nodo *read(listaLigada *ll, size_t index){
  44.    if(ll->tamanio){
  45.        Nodo* exploradorLista = (Nodo*)(ll->primer);
  46.        int i = 0;
  47.        while(i++ <index)
  48.            exploradorLista = (Nodo*)(exploradorLista->siguiente);
  49.        return exploradorLista;
  50.    }
  51.    return NULL;
  52. }
  53.  
  54. void update(listaLigada *ll, size_t index, int pValor){
  55.    if(ll->tamanio){
  56.        Nodo* exploradorLista = (Nodo*)(ll->primer);
  57.        int i = 0;
  58.        while(i++ <index)
  59.            exploradorLista = (Nodo*)(exploradorLista->siguiente);
  60.        exploradorLista->valor = pValor;
  61.    }
  62. }
  63.  
  64.  
  65. int main()
  66. {
  67.    listaLigada *miLista = nuevaListaLigada();
  68.    Nodo * a = nuevoNodo(1);
  69.    Nodo * b = nuevoNodo(2);
  70.    Nodo * c = nuevoNodo(3);
  71.    add(miLista, a);
  72.    add(miLista, b);
  73.    add(miLista, c);
  74.    Nodo* re = read(miLista,1);
  75.    printf("%d\n", re->valor);
  76.    return 0;
  77. }
  78.  
  79.  

Creo que el problema esta en esta instrucction en la funcion read()b]
exploradorLista = (Nodo*)(exploradorLista->siguiente);
Mi programa se crashea justo alli


« Última modificación: 2 Julio 2018, 15:59 pm por aurquiel » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Programa crashea al escribir
Ingeniería Inversa
x64core 0 1,996 Último mensaje 23 Septiembre 2012, 02:07 am
por x64core
Me crashea el programa « 1 2 »
Programación C/C++
jaxoR 16 7,324 Último mensaje 14 Marzo 2014, 07:02 am
por leosansan
Me crashea el programa
Programación C/C++
jaxoR 2 2,424 Último mensaje 30 Mayo 2014, 02:42 am
por Yoel Alejandro
Lista enlazada simple – listas ligadas [C]
Programación C/C++
DanielPy 3 3,142 Último mensaje 9 Junio 2015, 17:38 pm
por ivancea96
Por qué mi programa crashea?
Programación C/C++
poliche 2 2,360 Último mensaje 11 Octubre 2016, 23:16 pm
por ivancea96
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines