一文搞懂ARRAY类型变量的赋值

描述

ARRAY类型变量的赋值

数组包含1至6维,且包含全部为同类型的元素。将数组赋值给变量有两种方法。能够引用完整数组或一个数组元素。

赋值一个完整数组(Assigning a Complete Array)

当元素的数据类型和数组界限(最低和最高的可能的数组索引)相匹配时,能够将一个完整数组赋值给另一个数组。如果是这样,在赋值符后指定数组的标识符。下面的赋值是有效的:

arrname_1 := arrname_2 ;

数组元素的赋值(Assigning a Component of an Array)

用数组名后跟在方括号内的适当的索引值来寻地数组的单个元素。每维一个索引,他们用逗号分开并处于同一方括号内。索引必须是数据类型INT的算术表达式。

要达成对一个允许的元素的赋值,省去数组名称后的方括号内右边的索引。用此方法,取得数组的子集,其维数等于省去的索引数。下面的赋值是有效的:

arrname_1[ i ] := arrname_2[ j ] ;
arrname_1[ i ] := expression ;
identifier_1   := arrname_1[ i ] ;

例子(Example)

FUNCTION_BLOCK FB3
VAR
      SETPOINTS :ARRAY [0..127] OF INT ;
      PROCVALS  :ARRAY [0..127] OF INT ;
      CRTLLR    : ARRAY [1..3, 1..4] OF INT ;  // 声明一个有3行4列的矩阵(二维数组) 
      CRTLLR_1  : ARRAY [1..4] OF INT ;        // 声明一个有4个元素的向量(一维数组)
END_VAR

BEGIN
      // 完整数组的赋值
      SETPOINTS    := PROCVALS ;
      // 将一个向量赋值给数组CRTLLR的第二行
      CRTLLR[2]    := CRTLLR_1 ;
      // 数组元素的赋值
      CRTLLR [1,4] := CRTLLR_1 [4] ;
END_FUNCTION_BLOCK

VASS标准中例子:

arVisuWerte2  :    ARRAY[0..33] OF BYTE; 声明HMI-WINCC显示.

赋值: 

.......arVisuWerte2    := _ST_ROB.E_Rob;   
 

审核编辑::刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分