Gracias, tomé la base de una página en internet, luego sólo fui quitando y poniendo cosas para ajustar el código a mis necesidades Pero gracias, ya hice esas 2 cosas y ya jala. Muchas gracias.
void menu(void) { int opc,da; do { cout<<"1 - Buscar datos"; cout<<"\t2 - Insertar datos"; cout<<"\t3 - Mostrar todos los datos"; cout<<"\t4 - Borrar un dato"; cout<<"\t5 - Guardar datos a Archivo"; cout<<"\t6 - Cargar datos de Archivo"; cout<<"\t0 - Finalizar"; cout<<"\nSeleccione opcion: "; cin>>opc; switch(opc) { case 0: cout<<"\n\nFinaliza el programa"; getch(); //usar delete para eliminar //toda la lista p=i; while(p) { a=p; p=p->s; delete(a); } exit(0); case 1: cout<<"\n\nIngrese dato a buscar: "; cin>>da; if(buscar(da)) cout<<"\n\nDato existe"; else cout<<"\n\nDato NO EXISTE"; getch(); break; case 2: cout<<"Ingrese dato: "; cin>>da; insertar(da); break; case 3: mostrar(); break; case 4: borrar(); break; case 5: guardar(); break; case 6: cargar(); break; //por las dudas que el operador ingrese //cualquier verdura, fruta u otro tipo de hierba default: cout<<"\n\nOPCION NO VALIDA!!!"; getch(); } }while(opc); }
void mostrar(void) { int cont=1; if(!i) { cout<<"\n\nNO HAY LISTA PARA MOSTRAR"; getch(); return; } p=i; cout<<endl<<endl; while(p) { cout<<cont++<<" - Valor = "<<p->i<<endl; p=p->s; } cout<<"\n\nEso es todo"; getch(); }
int buscar(int d) { if (!i) { cout<<"No hay datos en la lista!!!"; getch(); return(0); } p=i; a=NULL; while(p->s && p->i<d) { a=p; p=p->s; } return(p->i==d?1:0); }
void borrar(void) { cout<<"\n\nIngrese dato a eliminar: "; cin>>da; if(buscar(da)) { if(a) a->s=p->s; else i=p->s; delete(p); cout<<"\n\nDato eliminado"; } else cout<<"\n\nDato no se encuentra"; getch(); }
void guardar(void) { FILE *arch; arch=fopen("DATOS-A.TXT","w"); if(!i) { cout<<"\n\nNO HAY LISTA PARA GUARDAR"; getch(); return; } p=i; while(p) { fprintf(arch,"%i\n",p->i); p=p->s; } cout<<"\n\nArchivo Guardado"; fclose(arch); getch(); }
void cargar(void) { int c,x; FILE *arch; arch=fopen("DATOS-A.TXT","r"); if(!arch) { cout<<"\n\nNO EXISTE EL ARCHIVO"; getch(); return; }
do { c=fscanf(arch,"%i\n",&x); if(c!=EOF) { insertar(x); } } while (c!=EOF); cout<<"\n\nArchivo Cargado"; fclose(arch); getch(); }
Todo iba bien resolviendo los errores de sintaxis hasta que lo volví a compilar me arrojó el siguiente error...
[Error] ld 1 returned estatus. Obviamente ya no compiló. Ya he tratado de resolverlo pero no se como, ayuda porfa, soy nuevo en esto. Agradezco de antemano su ayuda.