Error en codigo, ayuda!
Publicado por jorge (6 intervenciones) el 07/02/2007 17:02:33
Teniendo este codigo:
PROGRAM Pract_3a_5_4; {$APPTYPE CONSOLE}
USES
SysUtils, crt;
TYPE
informacion = RECORD
nombre: STRING[20];
apellidos: STRING[20];
NIF: STRING[20];
END;
agenda = ARRAY [1..5] OF informacion;
archivo = FILE OF informacion;
VAR
a: agenda;
eleccion: STRING;
contador: integer;
introducido: boolean;
y este procedimiento:
PROCEDURE grabarDatos (contador: integer); (* Guarda lo introducido en un fichero: "datos.dat" *)
VAR
aux: integer;
grabado : archivo;
BEGIN
assign (grabado, 'Datos.dat');
rewrite (grabado);
FOR aux:= 1 TO contador DO
BEGIN
write (grabado, a[aux].nombre); (* ERROR *)
write (grabado, a[aux].apellidos); (* ERROR *)
write (grabado, a[aux].NIF); (* ERROR*)
write (grabado);
END;
close (grabado);
END;
Me aparecen tres errores que dicen: "incompatible types": 'informacion' and 'ShortString'. (Donde he puesto lo de (*ERROR*)
Los datos que guardo han sido pedidos correctamente en otro procedimiento.
Alguien me puede ayudar a arreglarlo?
muchas gracias
PROGRAM Pract_3a_5_4; {$APPTYPE CONSOLE}
USES
SysUtils, crt;
TYPE
informacion = RECORD
nombre: STRING[20];
apellidos: STRING[20];
NIF: STRING[20];
END;
agenda = ARRAY [1..5] OF informacion;
archivo = FILE OF informacion;
VAR
a: agenda;
eleccion: STRING;
contador: integer;
introducido: boolean;
y este procedimiento:
PROCEDURE grabarDatos (contador: integer); (* Guarda lo introducido en un fichero: "datos.dat" *)
VAR
aux: integer;
grabado : archivo;
BEGIN
assign (grabado, 'Datos.dat');
rewrite (grabado);
FOR aux:= 1 TO contador DO
BEGIN
write (grabado, a[aux].nombre); (* ERROR *)
write (grabado, a[aux].apellidos); (* ERROR *)
write (grabado, a[aux].NIF); (* ERROR*)
write (grabado);
END;
close (grabado);
END;
Me aparecen tres errores que dicen: "incompatible types": 'informacion' and 'ShortString'. (Donde he puesto lo de (*ERROR*)
Los datos que guardo han sido pedidos correctamente en otro procedimiento.
Alguien me puede ayudar a arreglarlo?
muchas gracias
Valora esta pregunta


0