Buenas tardes
Tengo un pequeño problema en C que no sé como resolver.
Tengo implementación de una lista enlazada simple (en sus respectivos modulos) y con esa lista tengo que implementar una pila. La lista esta terminada y me funciona bien. El problema me viene a la hora de utilizar las funciones para la pila.
Por ahorrar código solo pondré lo mínimo, que es con lo no se hacer para que sea más legible.
lista.h //llamado m.h
Código:
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
struct Nodo {
int dato;
struct Nodo * siguiente;
};
typedef struct Nodo * PNodo;
void inicializarlista(PNodo *lista);
lista.c
Código:
#include "m.h"
void inicializarlista(PNodo *lista)
{
*lista=NULL;
}
pila.h
Código:
#include "m.h"
struct Pila {
PNodo * lista_pila;
int contador;
};
typedef struct Pila * PPila;
void ini(PPila * pila);
pila.c
Código:
#include "pila.h"
void ini(PPila * pila)
{
PNodo aux = pila->lista_pila;
inicializarlista(aux);
}
main.c
Código:
#include "pila.h"
int main()
{
PPila lista;
ini(&lista);
return 0;
}
El error me viene en el pila.c en la función de inicializar, ya que me dice que no puedo acceder a lista_pila porque pila no es una estructura o union