PD. Por curiosidad mire el codigo y es un aborto de la naturaleza.
sos un poeta eternal
#include "conio.h"
primero que todo eso no es estandar, aun si lo quisieras mantener lo tenes que rodear
por <> ya que esta en la ruta include por defecto, y si estas escribiendo c++ (supongo por la
extencion) no le tenes que poner el .h
es necesario?
es recomendad hacer
int main( int argc, char **argv )
y retornar un codigo asi se sabe cual
fue el codigo de finalizacion del programa (por lo general 0)
textattr(30);
gotoxy(28,8);
cprintf("Menu Principal\n");
gotoxy(28,9);
textattr(14);
cprintf("1");
textattr(7);
cprintf(" - ADICIONAR\n");
...
no notas un poco de funcionalidad repetida? no te parece que podrias hacer una funcion?
if(bib) bib=NULL; delete bib;
???
un consejo no uses variable globales
void listar() //FUNCION PARA LISTAR LOS LIBROS
{
clrscr();
int y = 2;
for( int i = 0; i < tam; i++ )
{
if( bib[ i ] )
{
g( 1, 1 );
textcolor( GREEN );
cputs("CODIGO TITULO AUTOR EDITORIAL GENERO FECHA " );
g(1,y);
cout<<bib[i]->cod;
g(8,y);
cout<<bib[i]->tit;
g(25,y);
cout<<bib[i]->aut;
g(41,y);
cout<<bib[i]->edi;
g(56,y);
cout<<bib[i]->gen;
g(66,y);
cout<<bib[i]->fec;
y++;
}
}
getch();
clrscr();
}
(hice lo mejor que pude con las tabulaciones)
es mejor que
void listar() //FUNCION PARA LISTAR LOS LIBROS
{clrscr();int y=2;
for(int i=0;i<tam;i++)
{if(bib[i])
{
g(1,1);textcolor(GREEN);cputs("CODIGO TITULO AUTOR EDITORIAL GENERO FECHA ");
g(1,y);cout<<bib[i]->cod;
g(8,y);cout<<bib[i]->tit;
g(25,y);cout<<bib[i]->aut;
g(41,y);cout<<bib[i]->edi;
g(56,y);cout<<bib[i]->gen;
g(66,y);cout<<bib[i]->fec;
y++;
}
}
getch();clrscr();
}
etc