COBOL GOBACK & STOP RUN & EXIT PROGRAM STATEMENT

来源:互联网 发布:阿里云ddos防护 编辑:程序博客网 时间:2024/06/05 00:51

There are 3 statements can be used to return from a program.


1. STOP RUN

2. GOBACK

3. EXIT PROGRAM



STOP RUN

Stop run statement will stop the current program and give control back to O.S immediately, whenever it's current in main program or a sub program.



EXIT PROGRAM

Exit program statement can only be used in sub program to specifies the end of a called program and returns control to the calling program.


It is ignored on a main program.


GOBACK

When used in sub program, it's same as EXIT PROGRAM statement, giving back to  caller program.

When used in main program, it's same as STOP RUN statement, giving back to O.S




For Example:

(RED statements will not be executed.)


STOP RUN in main program:

       IDENTIFICATION DIVISION.              PROGRAM-ID.    MAINPROG.              ENVIRONMENT DIVISION.                 DATA DIVISION.                        PROCEDURE DIVISION.                       DISPLAY "MAIN ENTRY".           STOP RUN.               *> PROGRAM STOP HERE           DISPLAY "MAIN END".           STOP RUN.



GOBACK in main program:

       IDENTIFICATION DIVISION.              PROGRAM-ID.    MAINPROG.              ENVIRONMENT DIVISION.                 DATA DIVISION.                        PROCEDURE DIVISION.                       DISPLAY "MAIN ENTRY".           GOBACK.                 *> PROGRAM STOP HERE           DISPLAY "MAIN END".           STOP RUN.



EXIT PROGRAM in main program:

       IDENTIFICATION DIVISION.              PROGRAM-ID.    MAINPROG.              ENVIRONMENT DIVISION.                 DATA DIVISION.                        PROCEDURE DIVISION.                       DISPLAY "MAIN ENTRY".           EXIT PROGRAM.           *> STATEMENT IS IGNORED           DISPLAY "MAIN END".           STOP RUN.

(EXIT PROGRAM instruction is ignored.)



STOP RUN in sub program:

       IDENTIFICATION DIVISION.              PROGRAM-ID.    MAINPROG.              ENVIRONMENT DIVISION.                 DATA DIVISION.                        PROCEDURE DIVISION.                       DISPLAY "MAIN ENTRY".           CALL "SUBPROG".           DISPLAY "MAIN END".           STOP RUN.       IDENTIFICATION DIVISION.       PROGRAM-ID. SUBPROG.       DATA DIVISION.       WORKING-STORAGE SECTION.       PROCEDURE DIVISION.           DISPLAY "SUBPROG ENTRY".           STOP RUN.                  *> PROGRAM STOP HERE           DISPLAY "SUBPROG EXIT".




GOBACK in sub program:

       IDENTIFICATION DIVISION.              PROGRAM-ID.    MAINPROG.              ENVIRONMENT DIVISION.                 DATA DIVISION.                        PROCEDURE DIVISION.                       DISPLAY "MAIN ENTRY".           CALL "SUBPROG".           DISPLAY "MAIN END".           STOP RUN.       IDENTIFICATION DIVISION.       PROGRAM-ID. SUBPROG.       DATA DIVISION.       WORKING-STORAGE SECTION.       PROCEDURE DIVISION.           DISPLAY "SUBPROG ENTRY".           GO BACK.                     *> PROGRAM BACK TO CALLER           DISPLAY "SUBPROG EXIT".






EXIT PROGRAM in sub program:

       IDENTIFICATION DIVISION.              PROGRAM-ID.    MAINPROG.              ENVIRONMENT DIVISION.                 DATA DIVISION.                        PROCEDURE DIVISION.                       DISPLAY "MAIN ENTRY".           CALL "SUBPROG".           DISPLAY "MAIN END".           STOP RUN.       IDENTIFICATION DIVISION.       PROGRAM-ID. SUBPROG.       DATA DIVISION.       WORKING-STORAGE SECTION.       PROCEDURE DIVISION.           DISPLAY "SUBPROG ENTRY".           EXIT PROGRAM.                *> PROGRAM BACK TO CALLER           DISPLAY "SUBPROG EXIT".

(EXIT PROGRAM instruction will return back to caller, just like GOBACK instruction)



0 0
原创粉丝点击