1
我們有一個COBOL程序,在該程序中我們將值填充到COBOL內部表中,然後搜索此表以找出某個值。在此搜索之前,我們初始化表索引變量。在cobol中初始化一個索引變量
SET PAF-IDX TO 1.
任何人都可以澄清,如果允許在COBOL中初始化一個索引變量loke這個。
INITIALIZE PAF-IDX.
我們有一個COBOL程序,在該程序中我們將值填充到COBOL內部表中,然後搜索此表以找出某個值。在此搜索之前,我們初始化表索引變量。在cobol中初始化一個索引變量
SET PAF-IDX TO 1.
任何人都可以澄清,如果允許在COBOL中初始化一個索引變量loke這個。
INITIALIZE PAF-IDX.
不,您爲什麼要「初始化」它?
這是IBM企業Cobol的手冊:
identifier-1
Receiving areas.
identifier-1 must reference one of the following:
v An alphanumeric group item
v A national group item
v An elementary data item of one of the following categories:
Alphabetic
Alphanumeric
Alphanumeric-edited
DBCS
External floating-point
Internal floating-point
National
National-edited
Numeric
Numeric-edited
v A special register that is valid as a receiving operand in a MOVE
statement with identifer-2 or literal-1 as the sending operand.
When identifier-1 re
編輯:
的OpenCobol程序員指南文件很明確:
The list of data items eligible to be set to new values by this statement is:
Every elementary item specified as identifier-1 ..., PLUS...
Every elementary item defined subordinate to every group item specified as dentifier-1
..., with the following exceptions:
USAGE INDEX items are excluded.
Items with a REDEFINES as part of their definition are excluded; this means that
tems subordinate to them are excluded as well.
草案的Cobol標準不太明確,但這些項目在INITIALIZE中使用時,通過生成SET而不是MOVE:DATA-POINTER,FUNCTION-POINTER,OBJECT-REFERENCE或PROGRAM-POINTER來處理。
編輯:
鑑於所述OpenCobol引用不是「特定」爲我想:在IBM的Cobol,目前,沒有什麼不能被通過作爲MOVE的目標可以被初始化操作。這與目前的OpenCobol相同。草案Cobol有一些例外,列出,但既不包括INDEXED BY(它不是表本身的一部分,但是編譯器本身定義存儲的單獨項),也不包括USAGE INDEX。