linked lists of characters in c

0

I'm practicing linked lists in c, what I want to do is save char elements in the nodes, I want to read those elements This is what I did, but I do not know how to read the elements while using a for cycle:

#include <stdio.h>
#include <stdlib.h>
#define CANT_NODOS 5

typedef struct Nodo{
    char* elemento;
    struct Nodo* siguiente; /*vinculo para unir mas nodos*/
}nodo;

//funcion que genera o crea una lista
nodo* ListaElementos(nodo* Lista){
    Lista = NULL ;
    return Lista;
}

// funcion que agrega nodos a la lista 

nodo* agregarNodo (nodo* Lista, char* elemento){
    nodo* nuevoNodo, *aux;
    nuevoNodo = (nodo*) malloc (sizeof(nodo));
    nuevoNodo -> elemento = elemento;
    nuevoNodo -> siguiente = NULL;
    if(Lista == NULL){
        Lista = nuevoNodo;
    }
    else{
        aux = Lista; //para no perder el elemento
        while(aux->siguiente != NULL){
                aux = aux -> siguiente;             
            }
        aux-> siguiente = nuevoNodo;
    }
    return Lista;
}
//Funcion que libera la memoria
void LiberarLista (nodo* Lista ){   

    free (Lista);
}

nodo* Lista1;
nodo* Lista2;

nodo* nodoListas(nodo*Lista){
    int i;
    char prueba, *elemento;

    printf("Cargar elemento: \n");
    //for (i = 0; i< CANT_NODOS; i++){
        //scanf ("%s", elemento);
        Lista = agregarNodo (Lista, "aqui deberia ir lo leido1");
        Lista = agregarNodo (Lista, "aqui deberia ir lo leido2");
        Lista = agregarNodo (Lista, "aqui deberia ir lo leido3");
        Lista = agregarNodo (Lista, "aqui deberia ir lo leido4");
        Lista = agregarNodo (Lista, "aqui deberia ir lo leido5");
    //}

}

int main(void){
    Lista1 = ListaElementos(Lista1);
    Lista2 = ListaElementos(Lista2);
    Lista1 = nodoListas(Lista1);

//impresion Lista 1
    while (Lista1 != NULL){
        printf("%s\t", Lista1->elemento);
        Lista1 = Lista1 -> siguiente;
    }
    return 0;
}

Any suggestions? ):

    
asked by Bubblegum Crisis 24.09.2017 в 16:22
source

0 answers