aprendiendo pilas colas lenguaje c
-
Hola , yo habia realizado una consulta sobre esto, pero fue un poco extensa...
buscando un poco en internet... veo que me cuesta temas del principio.. en este caso de una estructura dinamica
QUE ES LO QUE SUCEDE ACA=? PARA QUE ? POR QUE?y ese puntero? donde dice que ant tiene la direccion de memoria de "PiLA" si dicen que este tipo de estructura se redireccionan asi mismas...
struct pila{
char nombre[6];
struct pila *ant;
};
--basicamente me gustaria saber que es lo que sucede aca....
si necesitan el codigo de donde saque esto ...es este...Código PHP:#include struct pila{
#include
#include
char nombre[6];
struct pila *ant;
};
main(){ /* Insertar, extraer y visualizar */
char opc;
struct pila *ultimo=NULL,*actual=NULL;
do{
system("cls");
printf("1.- Insertar");
printf("\n2.- Extraer");
printf("\n3.- Visualizar la pila");
printf("\n4.- Salir");
opc=getch( );
switch(opc){
case '1':
system("cls");
actual= new struct pila;
printf("Nombre: ");
gets(actual->nombre);
actual->ant=ultimo;
ultimo=actual;
break;
case '2':
if (ultimo==NULL)
{
printf("\nNo hay elementos para desapilar");
getch();
break;
}
actual=ultimo;
ultimo=ultimo->ant;
delete actual;
printf("\nElemento desapilado");
getch();
break;
case '3':
system("cls");
if (ultimo==NULL){
printf("No hay elementos para listar");
getch();
break;
}
actual=ultimo;
while (actual!=NULL){
printf("Nombre: %s\n",actual->nombre);
actual=actual->ant;
}
getch( );
}
}while (opc!='4');
}
-
Según entiendo estás manejando cada nodo de la pila con la estructura:
struct pila{
char nombre[6];
struct pila *ant;
};
Ahora... de alguna forma tenes que apuntar al nodo de abajo, el anterior nodo. Eso lo haces con el puntero ant, que apunta a otro nodo (Nodo = Struct pila)
Espero haber respondido tu duda,
