Exemple #1
0
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;
}
Exemple #2
0
char* sl_push(sl* list, const char* data) {
	char* copy = strdup(data);
	pl_push(list, copy);
	return copy;
}