Programación General > Pascal

 ejemplo de listas con apuntadores

(1/1)

epayan:
la ultima entrega que hice fué de Archivos tipeados y registros.
SI bien son utiles para manejar informacion permanente en la computadora , no es muy recomendable trabajar directamente con ellas, la razon es la velocidad..

Para solventar este problema se utilizan la memoria, y como usar esta memoria ?.. Nada mas y nada menos que con apuntadores , manajedos atravez de listas. He aqui un ejemplo de como cargar un archivo tipeado (records) y trabajar con ese archivo en la memoria, se nota mucho la diferencia a que si se trabajára con los archivos fisicamente .

que les sea de utilidad
anexo el programa principal

--- Código: Pascal --- program ejemploapuntadores;uses crt,utileria,apuntadores; {cuerpo del programa}Var  TIApuntadorRegistro:ApuntadorRegistro;  Inicio,Final:ApuntadorRegistro;  Archivo:TipoArchivo;  Registro:TipoRegistro;  tecla:char;  Tamanio,contador:longint;  Opcion:Integer;  ArregloSeleccion:arregloVertical;  Ventana1:Save_screen;Begin    textattr:=15+1*16;    clrscr;    ArregloSeleccion[1]:='Mant. a Reg.';    ArregloSeleccion[2]:=' Listado    ';    ArregloSeleccion[3]:='Acerda de ..';    ArregloSeleccion[4]:='   Salir    ';    cuadro3d(1,1,80,3,2,1);    Textattr:=0+2*16;    gotoxy(2,2);write(' Ejemplos del uso de Apuntadores y Registros en Pascal 11/10/2009');    cuadro3d(2,23,79,25,2,1);    Textattr:=0+2*16;    gotoxy(45,24);write('epayan76@hotmail.com');    InicializaLista(Inicio,Final);    AperturaDeArchivo(Archivo);    CargaArchivoAMemoria(Archivo,Registro,Inicio,Final,TIApuntadorRegistro);    Close(archivo);    Repeat         cursoroff;         Opcion := MenuVertical(ArregloSeleccion,4,1,5,0,7,15,1);         case Opcion of             1 : Begin                   GetScreen(ventana1);                   Alta(Registro,Inicio,Final,TIApuntadorRegistro);                   PutScreen(Ventana1);                 End;             2 : Begin                   GetScreen(ventana1);                   EfectoScroll(Inicio,Final,TIApuntadorRegistro);                   PutScreen(Ventana1);                 End;             3 : Begin                   GetScreen(ventana1);                   AcercaDe;                   PutScreen(Ventana1);                 End;         end;{case}    Until ( Opcion = 4) or ( Opcion = 27);End.   

anexo archivo zip con las utilerias y el archivo.dat que debera estar en c:

Navegación

[0] Índice de Mensajes

Ir a la versión completa