登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:请教ARRAY数组指令的用法~!

点击:1879 回复:2

今天看手册,看到了数组ARRAY指令中举的例子如图:
附件
第一行:arr1:ARRAY[1...5] OF INT:=1,2,3,4,5;
这个好理解表示数组是有1—5组成的。但是下边的两行是什么意思就搞不懂了,请高手指点~!
13-08-04 23:35
不清楚你的这些ST脚本来自于什么品牌的PLC,但是有2点可以确认的是:
1、这些并不符合IEC61131-3规范对于Array的定义,所以无法简单的在所有支持ST语言的厂牌PLC上转换。
2、这些东西很好理解。
赋值语句中,3(7)代表常数7重复3次,那么对于arr2这个拥有4个元素的一维数组来说,不正是4个元素均赋初值了么。
而对于arr3这个多维数组,将其演变为1维数组,不正是:
arr3:ARRAY[1..8] OF INT:=0,0,4,4,4,4,2,3;
至于ARRAY[1..2,2..3,3..4]那不正是数组的元素下标么。
Good Luck~
13-08-05 08:18
谢谢老师的指点,那这个赋值是不是说明
arr2[1,3]:=1;
arr2[1,4]:=7;
arr2[2,3]:=7;
arr2[2,4]:=7;   呢?
之前我看手册上说的“[]”内“,”两边分别是数组维数的上下限,而且我在百度上找到的二维数组初始化的例子说的也是
  “类型说明符  数组名[常量表达式1][常量表达式2] 其中常量表达式1表示第一维下标的长度,常量表达式2 表示第二维下标的长度。  例如:      int a[3][4];  说明了一个三行四列的数组,数组名为a,其下标变量的类型为整型。该数组的下标变量共有3×4个,即:
a[0][0],a[0][1],a[0][2],a[0][3]
a[1][0],a[1][1],a[1][2],a[1][3]
a[2][0],a[2][1],a[2][2],a[2][3]”

所以我以为这种二维的数组排列应该是由4组一维数组组成的了:
arr2[0,0];arr2[0,1];arr2[0,2]
arr2[1,0];arr2[1,1];arr2[1,2]
arr2[0,0];arr2[0,1];arr2[0,2];arr2[0,3]
arr2[1,0];arr2[1,1];arr2[1,2];arr2[1,3]
理解错误啊~!
最后修改:2013/8/5 10:28:01
13-08-05 09:57

工控新闻

更多新闻资讯