Me parecia interesante postear una pila que hice,para que los que se inicien en las pilas(yo no estoy diciendo que sea un experto,bastante lejos de la realidad

Código
#include <stdio.h> #include <windows.h> struct pila{ int dato; struct pila *sig; }; void inicializapila(struct pila **p){ *p =NULL; } void push(struct pila **p,int k){ struct pila *n; n = new pila; if (n==NULL){ }else{ n->dato = k; n->sig = *p; *p=n; } } int pop(struct pila **p){ struct pila *m; int k; m = *p; k = m->dato; *p = m->sig; delete m; return k; } int verificarpila(struct pila *p){ if (p == NULL){ }else{ return 1; } } int main (){ struct pila *p; int k; char res; int x; char res2; inicializapila(&p); do{ push(&p,k); }while ((res== 's') || (res=='S')); x = pop(&p); verificarpila(p); printf("\nquiere quitar otro nodo?(Importante:Si se quitan todos los nodos el programa terminara) S/N: "); }while ((res2 =='S') || (res2=='s')); return 0; }
PD:Perdonad la tabulacion xD,si tengo un momento edito el mensaje y la mejoro.Si alguien quiere que ponga comentarios en el codigo que me avise.
Salu2