Pascal/Turbo Pascal - diferencia array y packed array

 
Vista:

diferencia array y packed array

Publicado por Alex (11 intervenciones) el 18/08/2007 09:37:10
Pues simplemente eso, si me pueden explicar un poco la diferencia entre array y packed array.

Por lo que he visto en algunos problemas, packed array, se usa en los arrays de registros, por ejemplo:

type
tficha= record
nombre:packed array [1..30] of char;
apellidos:packed array[1..30] of char
end;
var
ficha:tficha;

Y array se usa cuando se declara un array normal:

type
tnombre= array[1..30] of char;
var
nombre:tnombre;

Muchas gracias a las posibles respuestas.

Salu2
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:diferencia array y packed array

Publicado por Diego Romero (996 intervenciones) el 19/08/2007 04:21:41
La directiva "packed" hace que el compilador no use la alineación de palabra o doble palabra para almacenar en memoria estructuras complejas tal como array o record. La alineación de palabra (es decir a 8 bits) se usa para acelerar o hacer más sencillo el acceso a datos complejos ya que simplemente para calcular la posición relativa de un dato dentro de una estructura compleja basta con hacer aritmética de bytes en vez de sumar los tamaños de cada uno de los elementos de la estructura y multiplicar por el desplazamiento con la contrariedad de que los datos pueden ocupar un poco más de memoria de lo que en teoría ocuparían.

Usar la directiva "packed" enlentece el acceso a datos pero a veces es necesario para mantener compatibilidad, especialmente al declarar registros de archivos con formatos específicos (por ejemplo el encabezado de un BMP).

En los ejemplos que has puesto, la primer declaración a efectos prácticos es indiferente (salvo que estés intentando leer un archivo que no fue creado con Pascal o explícitamente se indica que necesita la directiva "packed" por no tener su registro alineado).
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:diferencia array y packed array

Publicado por callaos (1 intervención) el 09/01/2008 15:35:01
jajajajaj no tengo ni piuttaaaaa idea jajajajjajajajjaja
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar