Beispiel #1
0
TLista* remove_ini(TLista* lista) {
	TLista* aux = lista;
	if (!listavazia(aux)) {
		lista = lista->prox;
		free(aux);
	}
	return lista;
}
Beispiel #2
0
int main(void) {
	// CRIA A VARIÁVEL LISTA
	TLista *listax;

	//INICIALIZA A LISTA COM UM PONTEIRO EM NULL
	listax = inicializa();

	//INSERE OS DADOS NA LISTA
	listax = insere(listax, 'f');
	listax = insere(listax, 'u');
	listax = insere(listax, 'm');
	listax = insere(listax, 'm');
	listax = insere(listax, 'e');
	listax = insere(listax, 'm');
	listax = insere(listax, 'm');
	listax = insere(listax, 'm');
	listax = insere(listax, 'm');
	listax = insere(listax, 'c');

	// IMPRIME A LISTA RECURSIVAMENTE
	imprimeRec(listax);

	// SE A LISTA ESTIVER VAZIA, IMPRIME 1, SENÃO IMPRIME 0
	printf("\n--> %d\n\n", listavazia(listax));

	listax = remove_meio_rec(listax, 'm');

	// IMPRIME A LISTA RECURSIVAMENTE
	imprimeRec(listax);

	// LIBERA TODA A LISTA RECURSIVAMENTE
	listax = libera_rec(listax);

	// SE A LISTA ESTIVER VAZIA, IMPRIME 1, SENÃO IMPRIME 0
	printf("\n-->%d\n", listavazia(listax));



	return EXIT_SUCCESS;
}
Beispiel #3
0
int remover (no *lista) {	
	if(!listavazia(lista)) {
		no *proxNo, *atual;
		atual = lista->prox;
		
		while(atual !=NULL) {
			proxNo = atual->prox;
			free(atual);
			atual= proxNo;
		}
		return 1;
	}
	return 0;
}