int main() { int i; int sucesso = 1; pilha* pl = pl_inicializapilha(5); printf("---------- Empilhando ----------\n"); for (i = 0; (sucesso == 1); i++) { int valor = i * 10; pl_push(pl, valor, &sucesso); if (sucesso == 1) printf("%d\n", valor); } printf("-----------------------------------\n\n"); printf("-----------------------------------\n"); printf("TOPO = %d\n", pl_topo(pl, &sucesso)); printf("BASE = %d\n", pl_base(pl, &sucesso)); printf("-----------------------------------\n\n"); printf("---------- Desempilhando ----------\n"); while (1) { int valor = pl_pop(pl, &sucesso); if (sucesso == 0) break; printf("%d\n", valor); } printf("-----------------------------------\n"); pl_liberapilha(pl); return 0; }
char* sl_push(sl* list, const char* data) { char* copy = strdup(data); pl_push(list, copy); return copy; }