精通COBOL 11 2 1 子程式的命名規則

2021-04-17 05:10:42 字數 973 閱讀 8795

子程式的命名通常和普通程式的命名方式相同。但是需要注意的是,對於子程式而言,不可將其字首命名為以下這幾個名字。

afbafh

cbccee

edcibm

ifyigy

igzilb

實際上,以上名字都屬於

ibm相關產品的名字。如果將子程式的字首命名為以上名字,則在主程式中將不能對其進行呼叫。當在主程式中試圖呼叫該子程式時,系統將會從

ibm的庫,或者編譯器例程中尋求解決方案。

例如,以下這種子程式呼叫便是錯誤的。其中子程式**如下。

identificationdivision.

program-idedc-sub-prog.

auther***.

*environmentdivision.

*datadivision.

working storage section.

……linkage section.

define some parameters……*

proceduredivisionusingsome parameters.

……goback.

主程式**如下。

identificationdivision.

program-idtest-main-prog.

auther***.

*environmentdivision.

*datadivision.

working storage section.

77parm-datapic x.……*

proceduredivision.

……call 『edc-sub-prog』usingparm-data.

……stop run.

以上被呼叫的子程式名字為「

edc-sub-prog

」。由於其字首為「

edc」,屬於

ibm的保留字,因此該子程式不能被呼叫。

精通COBOL 11 2 2 子程式的呼叫順序

首先需要說明的是,子程式實際上就是普通的程式。當某一程式被其他程式呼叫時,該程式才相對呼叫的程式而言被稱作子程式。因此,當某一程式作為子程式被呼叫後,該程式也可再將其他程式作為子程式進行呼叫。當多個程式進行呼叫時,便存在乙個呼叫順序的問題。關於子程式的呼叫順序,通常是提倡進行線形呼叫的。例如,以下這...

精通COBOL 11 2 3 子程式的終止方式

當某一子程式被呼叫執行時,該程式通常有以下 3種發展方向。q呼叫另乙個子程式。q終止本子程式,並返回上一層主呼叫程式。q終止本子程式,同時退出整個系統。關於第一條發展方向,實際上在上一小節中已有所提到。此處重點看後兩種發展方向。其中對於第 2種發展方向,主要是通過 goback 或exit prog...

COBOL子程式呼叫

內部子程式 identification division.program id.proc a.environment division.data division.procedure division.identification division.program id.proc b.enviro...