implementar las funciones push y pop para ser utilizadas con caracteres
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú#include <stdio.h>
#include<stdlib.h>
typedef struct nodo_s
{
char dato;
struct nodo_s *siguiente;
} nodo_t;
typedef nodo_t *ptrNodo;
typedef nodo_t *ptrPila;
void push (ptrPila *pila, char x)
{
ptrNodo nodo;
nodo = (ptrNodo)malloc(sizeof(nodo_t));
if (nodo !=NULL)
{
nodo->dato = x;
nodo->siguiente =*pila;
*pila=nodo;
}
}
char pop(ptrPila *pila)
{
ptrNodo nodo;
char x;
nodo =*pila;
x = (*pila)->dato;
*pila = (*pila)->siguiente;
free(nodo);
return x;
}
int pila_vacia(ptrPila *pila)
{
return(*pila == NULL ? 1:0);
}
void nodos_pila(ptrNodo nodo)
{
if(nodo==NULL)
printf("la pila está vacia\n");
else
{
while (nodo !=NULL)
{
printf("%c\n",nodo->dato);
nodo = nodo->siguiente;
}
printf("\n");
}
}