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

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.