Sacar elementos de una pila de enteros

Sacar elementos de una pila de enteros

Vamos a tratar en éste artículo el procedimiento saca un elemento de una pila de enteros. El procedimiento es muy sencillo: pasamos una pila por referencia y el valor que sacaremos, también por referencia como argumentos. El procedimiento consiste en comprobar si la pila está vacía o no. En caso de que no lo esté entonces vamos a utilizar una variable auxiliar para actualizar el puntero al nuevo elemento de cabecera.

Os dejo una versión sencilla del código de éste procedimiento:

void p_enteros_saca ( p_enteros *p, struct p_enteros_ele *e ) {

	p_enteros viejo;
		
	if ( p_enteros_vacia ( *p ) {
		fprintf (stderr, "Error saca: "La pila de enteros está vacía.\n");
		exit(1);
	}
		
	viejo = *p;
	*e = viejo->val;
	*p = viejo->sig;
		
	free ( viejo );
	
}

Os dejo la sección de comentarios para que aporteis vuestras versiones de éste procedimiento.

No Comments

Post a Comment