ibm-midrange - GO TO 控制流如何在 COBOL 中工作?

标签 ibm-midrange cobol

PROCEDURE DIVISION
MAINPARA
    DISPLAY "HELLO MAIN".
    GO TO PARA1.
    DISPLAY " SECOND DISPLAY".
    STOP RUN.

PARA1.
    DISPLAY " I AM IN PARA1".

PARA2.
    DISPLAY "I AM IN PARA2"
....
PARA200

我对流程了解甚少。但是,我很困惑。当控制跳转到GO TO PARA1 ,它将执行 PARA1 .

现在我的问题是:
  • 会不会执行PARA2并返回 MAINPARA ?
  • 或者它会从 PARA2 执行在计划结束时?

  • 我不是 COBOL 程序员,我需要了解来自迁移工具/流程 AMXW COBOL 的代码。目标系统是 IBM AS/400。

    最佳答案

    您的程序将显示:

    HELLO MAIN
     I AM IN PARA1
    I AM IN PARA2
    ...
    

    因为 GO TO移动程序的执行点。然后它从它被移动到的地方顺序执行。

    如果您更换 GO TO,则在此对面动词 by PERFORM动词,程序:
    PROCEDURE DIVISION
    MAINPARA
        DISPLAY "HELLO MAIN".
        PERFORM PARA1.
        DISPLAY " SECOND DISPLAY".
        STOP RUN.
    
    PARA1.
        DISPLAY " I AM IN PARA1".
    
    PARA2.
        DISPLAY "I AM IN PARA2"
    ....
    PARA200
    

    会显示:
    HELLO MAIN
     I AM IN PARA1
    SECOND DISPLAY
    

    关于ibm-midrange - GO TO 控制流如何在 COBOL 中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26672662/

    相关文章:

    java - RPG调用Java,java.lang.NoClassDefFoundError

    javascript - 在 Javascript 中捕获 onkeydown

    file - 数据类型规范 '9(7)V9T' 是什么意思?

    asp.net - 连接到 AS400 时如何在 ASP.Net MVC 上设置动态连接字符串用户名和密码

    ibm-midrange - ILE RPG 程序无法编译

    ibm-midrange - AS400 Telnet 模拟器自动登录

    db2 - COBOL 程序、JCL 作业,还是两者兼而有之?

    windows - 替换字符串中的字符

    cobol - 出现错误不太确定为什么这是我的第一个 cobol 程序

    assembly - 如何从从 Assembly 返回到 COBOL 的指针寻址数据缓冲区