我正在尝试重新定义 Cobol 工作存储中的变量。请查看以下 id 是否可能:我可以将带有 PIC 条款 9(2).9(3) 的变量重新定义到这个 PIC 条款 -(2).9(3)
问问题
901 次
1 回答
0
在 COBOL 中重新定义字段就是重新定义。这意味着,您只是将存储在相应字段中的字节分解为更小的段/字节。
例如,假设您正在使用可以应用于许多常见事物(例如信用卡)的到期日期。COBOL 中的初始工作存储字段/变量将是:
05 EXPIRATION-DATE PIC X(8).
所以现在,让我们将这 8 个字节重新定义为更小的字节。这样,例如,我可以只提取到期日期的年份、月份或日期。
所以它变成:
05 EXPIRATION-DATE PIC X(8). ---> 20170623 (data stored in field)
05 EXPIRATION-DATE-NEW REDEFINES EXPIRATION-DATE.
10 EXPIRATION-YEAR PIC 9(4). ---> 2017
10 EXPIRATION-MONTH PIC 9(2). ---> 06
10 EXPIRATION-DAY PIC 9(2). ---> 23
因此,主字段将存储日期,但是,通过重新定义它,您现在可以只使用年、月或日,具体取决于您在程序中尝试执行的操作。
希望这可以帮助。
于 2017-06-23T17:52:09.500 回答