oye gracias me has dado una mejor idea en cuanto a pilas, el código lo modifique un poco aunque sigue = de sencillo, y me marca unos errores, es este
Código PHP:
typedef struct Spila
{
int item[30]; //elementoa
int top;//cima
};
void crea(Spila *);
int estaVacia(Spila *);
int estaLlena(Spila *);
void push(Spila *,int);
void pop(Spila *,int *);
Spila pila;
int e;
int dato,Sdato;
void main()
{
int opcion;
cout<<"Inserta una expresion\n";
cout<<"QUE DEDEAS HACER <inserta el numero de la operacion deseada>\n\n";
cout<<"1. insertar en la pila ";
cout<<"2. eliminar un elemento de la pila";
cout<<"3. visualizar la pila";
cin>>opcion;
switch(opcion)
{
case 1:
crea(&pila);
if(estaLlena(&pila)){ printf("\nPila llena."); getch();}
else
{
cout<<"inserta un dato";
cin>>dato;
push(&pila,dato);
Sdato=pop(&pila,&e);//not an allowed in function main()
cout<<"la cima de la pila es"<<Sdato<<"\n";
push(&pila,dato);
getch();
}
break;
case 2:
cout<<"en proceso";
break;
default:
break;
}
getche();
}
void crea(Spila *pila) { pila->top=-1;}
int estaVacia(Spila *pila)
{ int vacia;
if(pila==-1){vacia=0;}else {vacia=1;}//cannot convert to int to Spila*
return vacia;
}
int estaLlena (Spila *pila ) { return(pila==30);}//cannot convert to int to Spila*
void push(Spila *pila,int e){ pila->item[++pila->top]=e;}
void pop(Spila *pila,int *e){ *e=pila->item[pila->top--];}
a segun yo no le veo el error, y otra duda también
lo quise probar con malloc y eliminé lo que son las funciones de crea, estaVacia y estaLlna y cree esta funcion
Código PHP:
int iniciaPila(Spila *pila)
{
Spila *size;
int vacia;
size=(pila*)malloc(sizeof(struct Lista));
if(size!=NULL)
{vacia=0;}
else
{vacia=1;}
return vacia;
}
y en el main quedó así, aunqe me marca varios errores,
Código PHP:
case 1:
case 1:
iniciaPila(&pila);
if(!iniciaPila(&pila)){ printf("\nPila llena."); getch();}
else
{
cout<<"inserta un dato";
cin>>dato;
push(&pila,dato);
Sdato=pop(&pila,&e);
cout<<"la cima de la pila es"<<Sdato<<"\n";
push(&pila,dato);
getch();
}
break;
si me pudieses decir q esta mal de favor en el primer código y dar una idea gral para implementar en este codigo la instruccion malloc por favor