typestar

CALL y LINKAGE en COBOL

Dos programas en un archivo: CALL pasa campos a través de la LINKAGE SECTION.

*> Two programs in one file: CALL passes data through LINKAGE.
IDENTIFICATION DIVISION.
PROGRAM-ID. DRIVER.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 SPAN-FT   PIC 9(3) VALUE 24.
01 PLANKS    PIC 9(4).
PROCEDURE DIVISION.
    CALL "PLANK-COUNT" USING SPAN-FT PLANKS
    DISPLAY "A " SPAN-FT " ft footbridge needs " PLANKS " planks"
    STOP RUN.
END PROGRAM DRIVER.

IDENTIFICATION DIVISION.
PROGRAM-ID. PLANK-COUNT.
DATA DIVISION.
LINKAGE SECTION.
01 IN-SPAN    PIC 9(3).
01 OUT-COUNT  PIC 9(4).
PROCEDURE DIVISION USING IN-SPAN OUT-COUNT.
*> The called side declares its parameters in the LINKAGE SECTION.
    COMPUTE OUT-COUNT = IN-SPAN * 4 + 2
    GOBACK.
END PROGRAM PLANK-COUNT.

Cómo funciona

  1. CALL "PLANK-COUNT" USING SPAN-FT PLANKS pasa ambos campos por referencia.
  2. El programa llamado declara sus parámetros en la LINKAGE SECTION, no en su almacenamiento.
  3. PROCEDURE DIVISION USING ... los vincula en orden, y GOBACK regresa.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
24
Caracteres a escribir
665
Tokens
87
Ritmo de tres estrellas
40 tpm

Al ritmo de tres estrellas de 40 tokens por minuto, este intento toma unos 130 segundos.

Escribe este fragmento

Paso 3 de 3 en Funciones y llamadas; paso 24 de 27 en Fundamentos del lenguaje.

← Anterior Siguiente →