el codigo este no sirve porque lo recorte porque no era muy largo pero ahi se ven las funciones bool que me tiran error
Código:
#include <iostream> #include <conio.c> #include <teclado.h> using namespace std; struct tagenda { char nom[30]; char ape[30]; unsigned long tel; char dir[30]; char eml[30]; int b; }; bool abrir(char *); bool crear(char *); void ingresar(tagenda *); void modificar(tagenda *); void mostrar(tagenda *); void mtodo(tagenda *); void mxnom(tagenda *); void mxdir(tagenda *); void mxtel(tagenda *); void mxape(tagenda *); void mxem(tagenda *); void mbaja(tagenda *); void baja(tagenda *); void cr(tagenda *); void rbaja(tagenda *); //char* bd(tagenda *); //struct tp br(tp *); int main (int argc, char* argv[]) { tagenda age; char op; char *c; int l; do { clrscr(); cout<<" Presione las teclas Numerales para acceder a cada Opcion "<<endl<<endl<<endl; cout<<"1-Agregar Contactos"<<endl; cout<<"2-Modificar Datos de los Contactos"<<endl; cout<<"3-Mostrar Contactos"<<endl; cout<<"4-Dar de Baja a un contacto"<<endl; cout<<"5-Contar la cantidad de Contactos que Tengo"<<endl; cout<<"6-Descripcion art"<<endl; cout<<"7-Recuperar Un Registro Dado de Baja"<<endl; cout<<"8-Ayuda"<<endl; cout<<"s-Presione La Tecla 'S' para Salir del Programa"<<endl; op=getch(); switch(op) { case '1': ingresar(&age); break; case '2': modificar(&age); break; case '3': mostrar(&age); break; case '4': baja(&age); break; case '5': cr(&age); break; case '6': // c=bd(&age); cout<<"salio esto"<<endl; getch(); break; case '7': rbaja(&age); break; case '8': ayuda(); break; case 's': op='s'; break; } }while(op!='s'); return 0; } void ingresar(tagenda *pag) { char opc; char nom[]="c:\\agenda.dot"; // if(abrir(nom)) // { // cout<<"arch existe"<<endl; // me provoca Error si habilito esas funciones BOOL // getch(); // } // else // { // if(crear(nom)) // cout<<"arch creado"<<endl; // } // else // cout<<"no se puedo crear"<<endl; // } FILE *arch; if((arch=fopen(nom,"wb"))==NULL) cout<<"El Archivo no Existe"; else { do { cout<<endl<<"Ingrese Nombre del Contacto: "; fflush(stdin); cin.getline((pag->nom),30); while(strlen(pag->nom)>10) { cout<<endl<<"Reingrese Nombre: "; fflush(stdin); cin.getline((pag->nom),30); } cout<<endl<<"Ingrese Apellido del Contacto: "; fflush(stdin); cin.getline((pag->ape),30); while(strlen(pag->ape)>10) { cout<<endl<<"Reingrese el Apellido: "; fflush(stdin); cin.getline((pag->ape),30); } cout<<endl<<"Ingrese Direccion del Domicilio del Contacto: "; fflush(stdin); cin.getline((pag->dir),30); while(strlen(pag->dir)>10) { cout<<"Reingrese la Direccion: "<<endl; fflush(stdin); cin.getline((pag->dir),30); } cout<<endl<<"Ingrese el Telefono del Contacto: "; cin>>pag->tel; while((pag->tel)>10) { cout<<endl<<"Reingrese el Telefono: "; cin>>pag->tel; } cout<<endl<<"Ingrese Direccion Email: "; fflush(stdin); cin.getline((pag->eml),30); while(strlen(pag->eml)>10) { cout<<endl<<"Reingrese Direccion Email: "; fflush(stdin); cin.getline((pag->eml),30); } pag->b=1; cout<<"Presione la Tecla 's' para Salir o cualquier otra Tecla para Continuar: "<<endl; fwrite(pag,sizeof(tagenda),1,arch); opc=getch(); }while(opc!='s'); } clrscr(); fclose(arch); } bool abrir(char *c) { FILE *arc; if((arc=fopen(c,"rb"))==NULL) { fclose (arc); return (false); } else { fclose (arc); return (true); } } bool crear(char *c) { FILE *arc; if((arc=fopen(c,"wb"))==NULL) { fclose(arc); return (false); } else { fclose(arc); return (true); } } void rbaja(tagenda *pag) { clrscr(); char c[30],op; int ct=0; cout<<endl<<"Ingrese Nombre del Registro Dado de Baja para Recuperar: "; fflush(stdin); cin.getline(c,30); while(strlen(c)>10) { cout<<endl<<"reingrese Nombre del Registro Dado de Baja para Recuperar: "; fflush(stdin); cin.getline(c,30); } FILE *arch; if((arch=fopen("c:\\agenda.dot","rb+"))==NULL) cout<<"El Archivo no Existe"; else { clrscr(); while(fread(pag,sizeof(tagenda),1,arch)==1) { if(!strcmp(c,pag->nom)) { cout<<"Registro Encontrado"<<endl; cout<<pag->nom<<endl; getch(); cout<<"Esta Seguro en Recuperar el Registro "<<pag->nom<<" Pulse la Tecla S para confirmar Si: "<<endl; op=getch(); if(op=='s') { pag->b=1; fseek(arch,ftell(arch)-sizeof(tagenda),0);//vuelvo reg anterior fwrite(pag,sizeof(tagenda),1,arch); cout<<"Registro Dado de Alta"<<endl; cout<<pag->nom<<endl; getch(); fclose(arch); } } else { cout<<"No Existe Registro"<<endl; getch(); } } }//else fclose(arch); } void mxem(tagenda *pag) { clrscr(); char nm[30],op; int ct=0; cout<<endl<<"Ingrese Email del Registro: "; fflush(stdin); cin.getline(nm,30); while(strlen(nm)>10) { cout<<endl<<"Reingrese Email del Registro: "; fflush(stdin); cin.getline(nm,30); } FILE *arc; if((arc=fopen("c:\\agenda.dot","rb+"))==NULL) cout<<"El Archivo no Existe"; else { fread(pag,sizeof(tagenda),1,arc); while(!feof(arc)) { if(pag->b==1) { if(!strcmp(nm,pag->eml)) { ct++; if(ct==8) { cout<<"Para continuar Aprete cualquier Tecla, Presione ESC para salir"<<endl; ct=0; fflush(stdin); op=leerTecla(); if(op==27) { break; } } cout<<"Registro Encontrado"<<endl; cout<<endl<<"Nombre: "<<(pag->nom)<<endl; cout<<"Apellido: "<<(pag->ape)<<endl; cout<<"Telefono: "<<(pag->tel)<<endl; cout<<"Domicilio: "<<(pag->dir)<<endl; cout<<"Email: "<<(pag->eml)<<endl; getch(); } } fread(pag,sizeof(tagenda),1,arc); } } fclose(arc); } void mxape(tagenda *pag) { clrscr(); char nm[30],op; int ct=0; cout<<endl<<"Ingrese Apellido del Registro: "; fflush(stdin); cin.getline(nm,30); while(strlen(nm)>10) { cout<<endl<<"Reingrese Apellido del Registro: "; fflush(stdin); cin.getline(nm,30); } FILE *arc; if((arc=fopen("c:\\agenda.dot","rb+"))==NULL) cout<<"El Archivo no Existe"; else { fread(pag,sizeof(tagenda),1,arc); while(!feof(arc)) { if(pag->b==1) { if(!strcmp(nm,pag->ape)) { ct++; if(ct==8) { cout<<"Para continuar Aprete cualquier Tecla, Presione ESC para salir"<<endl; ct=0; fflush(stdin); op=leerTecla(); if(op==27) { break; } } cout<<"Registro Encontrado"<<endl; cout<<endl<<"Nombre: "<<(pag->nom)<<endl; cout<<"Apellido: "<<(pag->ape)<<endl; cout<<"Telefono: "<<(pag->tel)<<endl; cout<<"Domicilio: "<<(pag->dir)<<endl; cout<<"Email: "<<(pag->eml)<<endl; getch(); } } else cout<<"no existe registro"<<endl; fread(pag,sizeof(tagenda),1,arc); } } fclose(arc); }