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
Ir a la versión completa