Cobol - Macrosusitucion en Cobol

 
Vista:

Macrosusitucion en Cobol

Publicado por alejo (1 intervención) el 20/01/2011 21:53:48
Me pueden informar si en Acucobol se puede trabajar con macrosustituciones, asi como en Visual Fox por ejemplo.

A=10
B=20
C="A+B"
?&C

La macrosustituc. esta representada por &. la cul ejecuta la formula contenida en la variable C.

Espero Noticias. Alejo.
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
Imágen de perfil de Alejandro

Uso de macrosustituciones en AcuCOBOL

Publicado por Alejandro (300 intervenciones) el 08/09/2023 23:43:16
AcuCOBOL es un lenguaje de programación COBOL que, al igual que otros dialectos COBOL, no admite macrosustituciones directamente como lo haría un lenguaje de programación de scripting como Visual FoxPro. En AcuCOBOL, los programas suelen ser más estáticos y basados en lotes, lo que significa que las variables y las expresiones se evalúan durante la compilación y la ejecución, en lugar de permitir macrosustituciones dinámicas como en Visual FoxPro.

En tu ejemplo:

1
2
3
4
A = 10
B = 20
C = A + B
DISPLAY C

En AcuCOBOL, esto funcionará correctamente para asignar valores a A y B, realizar la operación C = A + B y mostrar el resultado en la pantalla. Sin embargo, no hay una función de macrosustitución como en Visual FoxPro que evalúe una cadena como "A+B" en tiempo de ejecución.

Si necesitas funcionalidad similar a la macrosustitución, tendrás que implementarla manualmente en tu programa AcuCOBOL utilizando constructos de programación. Por ejemplo, podrías crear una tabla de símbolos que asocie nombres como "A" y "B" con sus respectivos valores, y luego escribir una función que analice una cadena como "A+B" y la evalúe basándose en los valores de la tabla de símbolos. Sin embargo, esto sería una tarea más compleja y manual en comparación con la macrosustitución incorporada en lenguajes de scripting como Visual FoxPro.
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