Código:
espero que me puedan ayudar cual seria el problema ..gracias #include <iostream> #include <conio.h> using namespace std; struct nodo{ int valor; nodo *sig; }; class pila{ private: nodo *cima; public: void empilar(int); int desempilar(); void mostrar(); pila(); ~pila(); }; pila::pila(){ cima = NULL; } pila::~pila(){ nodo * n = new nodo; n = cima; while(n!=NULL){ cima = n; n=n->sig; delete(cima); } delete(n); } void pila::empilar(int v){ nodo * nuevo = new nodo; nuevo->valor = v; nuevo->sig = NULL; if(cima != NULL){ nuevo->sig = cima; } cima = nuevo; } int pila::desempilar(){ int valor; if(cima==NULL) cout<<"Pila vacia"; else{ valor = cima->valor; cima = cima->sig; } return valor; } void pila::mostrar(){ nodo * n = new nodo; n = cima; if(n==NULL){cout<<"\nVACIO"<<endl;} while(n!=NULL){ cout<<"Valor:"<<n->valor<<endl; n=n->sig; } } int menu(){ int op; cout<<"[1]Crear fila"<<endl; cout<<"[2]Invertir fila"<<endl; cout<<"elegir:"; cin>>op; return op; } void fila(){ FILE *F; int n,dato; F=fopen("datos.txt","a+"); cout<<"cuantos datos desea ingresar:"; cin>>n; for(int i=0;i<n;i++){ cout<<"escribe el dato:";cin>>dato; fwrite(&dato,sizeof(dato),1,F); } fclose(F); } int empilarfila(pila p){ FILE *F; int dato,i=0; F=fopen("datos.txt","r"); fread(&dato,sizeof(dato),1,F); while(!feof(F)){ cout<<"empilando:"<<dato<<endl; p.empilar(dato); fread(&dato,sizeof(dato),1,F); i++; } return i; } void desempilarfila(int n,pila p){ FILE *G; int dato; G=fopen("back.txt","a+"); for(int i=0;i<n;i++){ dato=p.desempilar(); fwrite(&dato,sizeof(dato),1,G); } fclose(G); } int main(){ pila p1; int opcion,n; do{ opcion=menu(); if(opcion==1){ fila(); } else{ if(opcion==2){ n=empilarfila(p1); p1.mostrar(); //desempilarfila(n,p1); } } }while(opcion); return 0; }