Cobol 如何引用不明确的顶级变量?
在这段代码中,我想Cobol 如何引用不明确的顶级变量?,cobol,disambiguation,Cobol,Disambiguation,在这段代码中,我想接受并显示01 leveld变量。虽然05级D很容易,但是F的D有没有办法指定01级D 显而易见的解决方案是“只需更改变量名”,但希望有更好的方法 IDENTIFICATION DIVISION. PROGRAM-ID. DISAMBIGUATION-ISSUE. DATA DIVISION. WORKING-STORAGE SECTION. 01 D VALUE PIC 9(8). 01 F. 05 Y PIC 9(4).
接受并显示01 leveld
变量。虽然05级D
很容易,但是F的D
有没有办法指定01级D
显而易见的解决方案是“只需更改变量名”,但希望有更好的方法
IDENTIFICATION DIVISION.
PROGRAM-ID. DISAMBIGUATION-ISSUE.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 D VALUE PIC 9(8).
01 F.
05 Y PIC 9(4).
05 M PIC 9(2).
05 D PIC 9(2).
PROCEDURE DIVISION.
*> Errors here, D is ambiguous
ACCEPT D.
DISPLAY "Date: " D.
STOP RUN.
在这种情况下,恐怕唯一的方法是更改变量名或将01
-levelD
设置为从属项,例如
01 D-rec.
03 D PIC 9(8).
...
DISPLAY D IN D-rec
不,您可以引入一个新的01级别(比如d-x),并将01 d
更改为03 d
,然后执行d-x的d
。简而言之,您不能限定01级别。