zoukankan      html  css  js  c++  java
  • field symbol 一---已知字段名

    DATABEGIN OF t_out2 OCCURS 0,
      f001 TYPE f, f002 TYPE f, f003 TYPE f, f004 TYPE f,
      avg1 TYPE f, avg2 TYPE f, avg3 TYPE f, avg4 TYPE f,
      END OF t_out2.

    DATABEGIN OF t_out OCCURS 0,
      f001 TYPE f, f002 TYPE f, f003 TYPE f, f004(40TYPE c,
      END OF t_out.

    FIELD-SYMBOLS: <fs>,<fs1>.
    DATA: gv_avg(40),
          t_avg(40).
    DATA: gv_idx TYPE n.

    t_out2-f001 '80'.
    t_out2-f002 '60'.
    t_out2-f003 '50'.
    APPEND t_out2.

    t_out-f001 '8'.
    t_out-f002 '6'.
    t_out-f003 '5'.
    APPEND t_out.



    LOOP AT t_out2.


      DO TIMES.
        gv_idx = sy-index.
        CONCATENATE 't_out2-f00'gv_idx INTO gv_avg.
        ASSIGN (gv_avgTO <fs>.
        <fs> = <fs> / 2.

      ENDDO.
      MODIFY t_out2.
    ENDLOOP.

    LOOP AT t_out.

      DO TIMES.
        gv_idx = sy-index.
        CONCATENATE 't_out2-f00'gv_idx INTO gv_avg.
        ASSIGN (gv_avgTO <fs>.
        CONCATENATE 't_out-f00'gv_idx INTO t_avg.
        ASSIGN (t_avgTO <fs1>.
        <fs1> = <fs>.
        MODIFY t_out.

      ENDDO.

    ENDLOOP.

    IS BOUND:用于检查一个引用变量是否指向了一个有效的引用。帮助文档特意提到,如果一个引用指向的是一个栈上申请的变量,那么这个变量会随栈的销毁而被销毁,因此指向其的引用不再有效。

    IS INITIAL: 用于检查一个变量的值是否为其数据类型对应的初始值。

    比如我定义一个引用变量但不对其赋值,则IS INITIAL判断一定为abap_true.

    IS ASSIGNED: 对于检测的field symbol,该关键字判断该field symbol是否分配有内存区域。

  • 相关阅读:
    URAL1204. Idempotents(扩展欧几里得)
    URAL1049. Brave Balloonists
    URAL1133. Fibonacci Sequence(二分)
    URAL1352. Mersenne Primes
    URAL1118. Nontrivial Numbers
    hdu3270Arranging Your Team(dfs)
    Codeforces Round #209 (Div. 2)C
    KMP
    树状数组求逆序对
    poj2352
  • 原文地址:https://www.cnblogs.com/zuoting-haoxue/p/13217771.html
Copyright © 2011-2022 走看看