精通COBOL--11.2.1 子程序的命名规则

  子程序的命名通常和普通程序的命名方式相同。但是需要注意的是,对于子程序而言,不可将其前缀命名为以下这几个名字。

AFB           AFH           CBC          CEE          EDC

IBM            IFY             IGY            IGZ            ILB

实际上,以上名字都属于IBM相关产品的名字。如果将子程序的前缀命名为以上名字,则在主程序中将不能对其进行调用。当在主程序中试图调用该子程序时,系统将会从IBM的库,或者编译器例程中寻求解决方案。

例如,以下这种子程序调用便是错误的。其中子程序代码如下。

IDENTIFICATION   DIVISION.

PROGRAM-ID      EDC-SUB-PROG.

AUTHER           XXX.

*

ENVIRONMENT   DIVISION.

*

DATA  DIVISION.

WORKING STORAGE SECTION.

……

 LINKAGE SECTION.

      define some parameters

……

*

PROCEDURE   DIVISION  USING  some parameters.

……

GOBACK.

主程序代码如下。

IDENTIFICATION   DIVISION.

PROGRAM-ID      TEST-MAIN-PROG.

AUTHER           XXX.

*

ENVIRONMENT   DIVISION.

*

DATA  DIVISION.

WORKING STORAGE SECTION.

 77   PARM-DATA   PIC X.

……

*

PROCEDURE   DIVISION.

……

CALL ‘EDC-SUB-PROG’  USING  PARM-DATA.

……

STOP RUN.

以上被调用的子程序名字为“EDC-SUB-PROG”。由于其前缀为“EDC”,属于IBM的保留字,因此该子程序不能被调用。

你可能感兴趣的:(cobol,ibm,parameters,编译器,产品)