int main(int argc, char const *argv[])
{
LISTA *lista1;
LISTA *lista2;
crearLista(lista1);
crearLista(lista2);
STR *s = crearSTR("Hola"); // sin restricción de longitud
NUMBER *n = crearNRO(10); // solo usar enteros.
agregarLista(lista1, s); // el orden de adición define
agregarLista(lista1, n); // lo que se quiere.
agregarLista(lista1, lista2); // lista de lista
destruirSTR(s);
destruirNRO(n);
}
In LISTA.c
void crearLista(LISTA *Lista)
{
LISTA nueva;
*Lista=nueva;
}
LISTA.h
typedef struct lista LISTA;
void crearLista(LISTA *Lista);
void agregarLista(LISTA *Lista, void *elem);
This gives me a segmentation fault. In gdb the lista1
variable is initialized in 0x0 and I don't understand why.