Pascal/Turbo Pascal - ¡S.O.S.! Por favor!!!. Identificador desconocido

 
Vista:

¡S.O.S.! Por favor!!!. Identificador desconocido

Publicado por Ely (5 intervenciones) el 27/10/2001 03:26:39
Hola,

Estoy escribiendo un programita en TP 7.0, para presentar como trabajo práctico y en las llamadas a procedimientos, dentro de otro procedimiento, me da el error 3: identificador desconocido.

¿que error estoy cometiendo?.

Agradecería si alguien me puede ayudar, ya que tengo que presentar el trabajo práctico el lunes.

Ely
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:¡S.O.S.! Por favor!!!. Identificador desconocid

Publicado por Diego Romero (282 intervenciones) el 27/10/2001 04:25:11
Es dificil decirte sin ver el codigo fuente del programa en cuestión pero te doy algunas pistas.

Por ejemplo tenemos este seudocodigo.

procedumiento A;
begin
...
end;
Procedimiento B;
begin
A; {<---------- valido, A está previamente declarado}
end;

pero si...

Procedimiento B;
begin
A; {<----------NO valido, A no está declarado antes que B}
end;

procedumiento A;
begin
...
end;
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

Gracias Diego!!

Publicado por Ely (5 intervenciones) el 27/10/2001 17:35:06
Gracias por tu ayuda, el problema era que colocaba los procedimientos debajo del que hacía la llamada.
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:Gracias Diego!!

Publicado por Diego Romero (282 intervenciones) el 27/10/2001 21:30:05
De nada. También te sería util leer la ayuda de la palabra reservada "forward" que sirve para pre-declarar un procedimiento. En mi ejemplo anterior sería.

procedure B; forward;

procedure A;
begin
B; {<------- correcto, el encabezado de B ha sido declarado como forward}
...
end;

procedure B; {<---- aqui se declara el verdadero procedimiento B;
begin
...
end;

Forward le indica al compilador que un procedimiento está declarado mas abajo a pesar de que se llame desde un procedimiento anterior. Es muy util cuando se programan algoritmos recursivos donde dos procedimientos o funciones se llaman mutuamente.

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