如何在同一个文件中使用 LINKAGE SECTION 和 WORKING-STORAGE SECTION?
How to use LINKAGE SECTION and WORKING-STORAGE SECTION in the same file?
我正在尝试编写一个 COBOL 模块并在此文件中也包含一些变量:
IDENTIFICATION DIVISION.
PROGRAM-ID. UTIL.
DATA DIVISION.
LINKAGE SECTION.
01 MY_VAR PIC X(100).
DATA DIVISION.
WORKING-STORAGE SECTION.
01 RESULT PIC X(200) value SPACES.
PROCEDURE DIVISION USING MY_VAR.
STRING INPUT DELIMITED BY SPACE
' ' DELIMITED BY SIZE
MY_VAR BY SPACE
INTO RESULT
DISPLAY RESULT
EXIT PROGRAM.
对于输入参数 (MY_VAR
),我使用 LINKAGE SECTION
。我不确定如何使用 WORKING-STORAGE SECTION
语句来声明 RESULT
变量。
我该怎么做?
您应该有 1 个数据部门。另外,我认为顺序对各节不利。
我建议在编码之前查看一些 Cobol 文档。
IDENTIFICATION DIVISION.
PROGRAM-ID. UTIL.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 RESULT PIC X(200) value SPACES.
LINKAGE SECTION.
01 MY_VAR PIC X(100).
PROCEDURE DIVISION USING MY_VAR.
STRING INPUT DELIMITED BY SPACE
' ' DELIMITED BY SIZE
MY_VAR BY SPACE
INTO RESULT
DISPLAY RESULT
EXIT PROGRAM.
你是在PC主机上使用Cobol程序吗?如果在 PC 上——您使用的是哪个 Cobol 程序?
如果您使用链接部分,前 2 个字节指定变量的长度。
另外 - 我没有看到 INPUT 变量的定义,除非 INPUT 是某种 Cobol 命令(在大型计算机上无法识别)。
正确的语法(在大型机上)是:
LINKAGE SECTION.
01 link-parms.
05 LNK-PARM-LENGTH PIC S9999 COMP.
05 MY_VAR PIC X(100).
PROCEDURE DIVISION USING MY_VAR.
STRING INPUT DELIMITED BY SPACE
' ' DELIMITED BY SIZE
MY_VAR BY SPACE
INTO RESULT
DISPLAY RESULT
STOP RUN.
我正在尝试编写一个 COBOL 模块并在此文件中也包含一些变量:
IDENTIFICATION DIVISION.
PROGRAM-ID. UTIL.
DATA DIVISION.
LINKAGE SECTION.
01 MY_VAR PIC X(100).
DATA DIVISION.
WORKING-STORAGE SECTION.
01 RESULT PIC X(200) value SPACES.
PROCEDURE DIVISION USING MY_VAR.
STRING INPUT DELIMITED BY SPACE
' ' DELIMITED BY SIZE
MY_VAR BY SPACE
INTO RESULT
DISPLAY RESULT
EXIT PROGRAM.
对于输入参数 (MY_VAR
),我使用 LINKAGE SECTION
。我不确定如何使用 WORKING-STORAGE SECTION
语句来声明 RESULT
变量。
我该怎么做?
您应该有 1 个数据部门。另外,我认为顺序对各节不利。 我建议在编码之前查看一些 Cobol 文档。
IDENTIFICATION DIVISION.
PROGRAM-ID. UTIL.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 RESULT PIC X(200) value SPACES.
LINKAGE SECTION.
01 MY_VAR PIC X(100).
PROCEDURE DIVISION USING MY_VAR.
STRING INPUT DELIMITED BY SPACE
' ' DELIMITED BY SIZE
MY_VAR BY SPACE
INTO RESULT
DISPLAY RESULT
EXIT PROGRAM.
你是在PC主机上使用Cobol程序吗?如果在 PC 上——您使用的是哪个 Cobol 程序? 如果您使用链接部分,前 2 个字节指定变量的长度。 另外 - 我没有看到 INPUT 变量的定义,除非 INPUT 是某种 Cobol 命令(在大型计算机上无法识别)。
正确的语法(在大型机上)是:
LINKAGE SECTION.
01 link-parms.
05 LNK-PARM-LENGTH PIC S9999 COMP.
05 MY_VAR PIC X(100).
PROCEDURE DIVISION USING MY_VAR.
STRING INPUT DELIMITED BY SPACE
' ' DELIMITED BY SIZE
MY_VAR BY SPACE
INTO RESULT
DISPLAY RESULT
STOP RUN.