2

在这段代码中,我想ACCEPTDISPLAY01 级别D变量。虽然 05 级别D很简单,D OF F但有没有办法指定 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.
4

1 回答 1

6

恐怕在这种情况下唯一的方法是更改​​变量名称或将01-levelD变为从属项,例如

 01  D-rec.
     03  D PIC 9(8).
 ...
     DISPLAY D IN D-rec
于 2018-07-09T13:54:40.083 回答