zoukankan      html  css  js  c++  java
  • 传递参数的方式

    DATA: I_NUM1 TYPE VALUE 10,
          I_NUM2 TYPE VALUE 20,
          I_NUM3 TYPE I.

    WRITE'I_NUM1=',I_NUM1,
           'I_NUM2=',I_NUM2,
           'I_NUM3=',I_NUM3.
    SKIP.
    PERFORM CALCULATOR USING I_NUM1 I_NUM2 CHANGING I_NUM3.


    WRITE:  /'I_NUM1=',I_NUM1,
            'I_NUM2=',I_NUM2,
            'I_NUM3=',I_NUM3.
    SKIP.
    "一、  传递参数时将参数的地址(ADDRESS)传至子程序中,也就是子程序中的参数变量与外部程序的参数变量共享地址内的值。
    "又叫CALL BY ADDRESS,若子程序中的参数变量的值发生了改变,那么,外部程序的实际变量的值也发生改变。
    *FORM CALCULATOR USING NUM1 NUM2 CHANGING NUM3.
    *
    *        NUM3 = NUM1 + NUM2.
    *  WRITE:  'NUM1=',NUM1,
    *          'NUM2=',NUM2,
    *          'NUM3=',NUM3.
    *  ENDFORM.

    "二、值传递就是将参数的值复制一份到另一个至内存地址中,所以在子程序中参数变量的值的改变不影响外部程序实际变量的值。
    FORM CALCULATOR USING VALUE(NUM1VALUE(NUM2CHANGING SUM.
      SUM = NUM1 + NUM2.
      NUM1 = NUM1 * NUM2.
      NUM2 = NUM1 * NUM2.
      WRITE: /'NUM1=',NUM1,
             'NUM2=',NUM2,
             'SUM=',SUM.
    ENDFORM.
    "三、传递参数的方式同值传递相同,但在子程序结束执行是会将传入参数变量的最终值回传一份给外部程序变量。
    *FORM CALCULATOR USING NUM1 NUM2 CHANGING VALUE(TOTAL).
    *  TOTAL = NUM1 + NUM2.
    *  WRITE: / 'NUM1=',NUM1,
    *           'NUM2=',NUM2,
    *           'TOTAL=',TOTAL,
    *           'I_NUM3=',I_NUM3.
    *  ENDFORM.

  • 相关阅读:
    (第三周)c#程序理解
    (第三周)使用visual studio 2015进行单元测试
    (第二周)软件工程第二周之四则运算
    (第二周)读《我是一只IT小小鸟》有感
    Jmeter--参数化的两种方法
    接口测试(1)
    自动化测试框架Cucumber和RobotFramework的对比
    selenium2+Python--学习进阶路线图
    Robot Framework--环境搭建(Mac)
    Selenium2+Python--python3.6 安装 xlrd 模块---Mac
  • 原文地址:https://www.cnblogs.com/salah/p/11917014.html
Copyright © 2011-2022 走看看