
Analizador léxico y sintáctico para el lenguaje pl0
C/Visual C
Publicado el 7 de Julio del 2007 por Alejandro Martinez (2 códigos)
30.172 visualizaciones desde el 7 de Julio del 2007
Código fuente de un analizador léxico y sintáctico para el lenguaje pl0 compilado en Borland C++ 3.1 o turbo C++ 3.1.
Comentarios sobre la versión: Versión 1 (6)
por ejemplo ya que tienes el ejecutable seria ejecutable.exe <rutaArchivo> donde tienes que reemplazarlo por la ruta del archivo de texto que quieres analizar, por ejemplo: programa miArchivo.txt
Por cierto el código es muy bueno aunque el analizador léxico, creo yo, que lo hiciste un poco complejo.
Hola. Vi tu codigo y tienes un error conceptual que cometen
muchos programadores en lenguaje C, lo que provoca que esas
aplicaciones sean inestables y el error dificil de encontrar. Te
envio un ejm. Si no entiendes lo que pasa escribeme un correo
y te digo cual es el error. (El lenguaje C, parece facil, pero no lo es).
#include <stdio.h>
#include <string.h>
#include <memory.h>
char *RetornaPunteroAString1();
char *RetornaPunteroAString2(char *);
void CambiaStack();
/*------------------------------------*/
main()
{
char *p1, *p2;
char Value[24];
p1 = RetornaPunteroAString1();
p2 = RetornaPunteroAString2(Value);
while (1) {
printf (\"\\n ¨ MISMOS MENSAJES A MOSTRAR ?\\n\");
printf (\"\\n[%s] len=%d \", p1, strlen(p1));
printf (\"\\n[%s] len=%d \", p2, strlen(p2));
printf (\"\\nPresiona Enter\");
getchar();
CambiaStack();
}
}
/*------------------------------------*/
char *RetornaPunteroAString1()
{
char Value[124];
strcpy (Value,\"Retornan lo mismo\");
return Value;
}
/*------------------------------------*/
char *RetornaPunteroAString2(char *Value)
{
strcpy (Value,\"Retornan lo mismo\");
return Value;
}
/*--- Por llamarla de alguna manera */
void CambiaStack()
{
char Value[124];
strcpy(Value, \"¨ !!!!!! QUE PASO !!!!!! ?\");
}
Que es esto un intento fallido de un programador?
Malo