[三菱] 案例分享:数组变量应用!

[复制链接]
查看117 | 回复0 | 2024-6-6 10:32:40 | 显示全部楼层 |阅读模式
1
概述
                                数组是相同数据类型的元素的集合。支持固定长度或可变的一维和多维数组。简单来说:数组是指将相同数据类型的标签的连续集合体用一个名称表示。如下图所示:

2
声明数组语法
                                您可以在 POU 的声明部分以及全局变量列表中定义数组。如下图所示:






01



固定长度数组声明的语法
<Array_Name>: ARRAY [<ll1>..<ul1>,<ll2>..<ul2>,..,<lln>..<uln>] OF <elem.type>
ll1, ll2, lln标识字段范围的下限。
ul1, ul2,uln标识字段范围的上限。
范围值必须为整数类型。
定义固定长度的数组声明示例
Card_game: ARRAY [1..13, 1..4] OF INT;




02



长度可变的数组声明语法
<Array name> :ARRAY[* ( , * )+ ] OF <data type>;
// (...)+:一个或多个其他维
定义可变长度的数组声明示例



03



初始化数组
数组完整初始化示例
arr1 : ARRAY [1..5] OF INT := [1,2,3,4,5];
arr2 : ARRAY [1..2,3..4] OF INT := [1,3(7)]; (* 简短:1,7,7,7 *)
arr3 : ARRAY [1..2,2..3,3..4] OF INT := [2(0),4(4),2,3];
(* 简短: 0,0,4,4,4,4,2,3 *)


3
应用案例
练习:逻辑阵列应用(如下图)
给定零点坐标,自动将其他点的数据进行运算,并得出结果存入数组中语法简化:

PROGRAM SR_Main
VAR
a:ARRAY[0..4] OF INT;
b:ARRAY[0..6] OF INT;
c:INT;
d:INT;
number1:INT;
number2:INT;        
start: BOOL;
END_VAR
c:=0;
d:=0;
number1:=0;
number2:=0;
IF start THEN
FOR c:=0 TO 4 BY 1 DO
a[c]:=number1;
number1:=number1+50;
END_FOR

FOR d:=0 TO 6 BY 1 DO
b[d]:=number2;
number2:=number2+50;
END_FOR

END_IF
责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则