0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:微笑应对 2022-07-12 10:55 次阅读

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;

审核编辑::刘清

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

    关注

    0

    文章

    613

    浏览量

    28553

原文标题:ARRAY类型变量的赋值

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    数组名之间可以直接赋值

    ;     return 0;} 想把数组 a 里面的数据全部赋值给 b,写成 b = a 行不行? 和这个问题类似的还有,数组名为什么不能进行 ++ 操作? char array[5] = {0};array++; 比如
    的头像 发表于 11-26 11:23 259次阅读

    搞懂Linux进程的睡眠和唤醒

    机制 1)信号(Signal): 进程可以通过接受特定信号被唤醒。 2)条件变量(Condition Variable): 多线程编程中用于同步多个线程的工具,可以让个线程在某些条件下睡眠并等待
    发表于 11-04 15:15

    Linux环境变量配置方法

    Linux上环境变量配置分为设置永久变量和临时变量两种。环境变量设置方法同时要考虑环境Shell类型,不同
    的头像 发表于 10-23 13:39 287次阅读

    鸿蒙原生应用元服务开发-仓颉基础数据类型元组类型

    之间使用逗号分隔。下面的例子中,分别定义了个 (Int64, Float64) 类型变量 x,以及个 (Int64, Float64, String)
    发表于 09-12 11:02

    嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-shell脚本编写之变量

    变量是任何种编程语言都必不可少的组成部分,变量用来存放各种数据。脚本语言在定义变量时通常不需要指明类型,直接
    发表于 08-30 09:21

    飞凌嵌入式ElfBoard ELF 1板卡-shell脚本编写之变量

    变量是任何种编程语言都必不可少的组成部分,变量用来存放各种数据。脚本语言在定义变量时通常不需要指明类型,直接
    发表于 08-29 11:04

    技术干货驿站 ▏深入理解C语言:基本数据类型变量

    语言的知识,为后续的编程学习打下坚实的基础。1基本数据类型在C语言中,数据类型指的是用于声明不同类型变量或函数的个广泛的系统,用于定义
    的头像 发表于 07-26 17:53 2344次阅读
    技术干货驿站 ▏深入理解C语言:基本数据<b class='flag-5'>类型</b>和<b class='flag-5'>变量</b>

    关于go中接口类型的表示方法

    go是个静态性语言,每个变量都有静态的类型,因此每个变量在编译阶段中有明确的变量类型,比如像:
    的头像 发表于 04-28 10:13 436次阅读

    GOLANG接口三个特性介绍

    变量i的类型为int,变量j的类型为MyInt,变量i、j具有确定的类型,虽然i、j的潜在
    的头像 发表于 04-16 11:40 479次阅读

    鸿蒙TypeScript学习第14天:【联合类型

    联合类型(Union Types)可以通过管道(|)将变量设置多种类型赋值时可以根据设置的类型赋值
    的头像 发表于 04-12 15:28 552次阅读
    鸿蒙TypeScript学习第14天:【联合<b class='flag-5'>类型</b>】

    STM32函数地址赋值变量后结果会自动加1是怎么回事?

    最近在做LiteOS系统的移植,需要将任务地址(函数地址)赋值给任务堆栈,但是在过程中发现,被赋值变量会比实际的函数地址多1。比如有函数地址为0x080033D8,将其赋值
    发表于 04-03 06:04

    为什么指针之间不要随意赋值呢?

    指针之间也不能随意赋值
    的头像 发表于 03-28 17:13 810次阅读
    为什么指针之间不要随意<b class='flag-5'>赋值</b>呢?

    C语言数据类型有哪些

    在 C 语言中,数据类型指的是用于声明不同类型变量或函数的个广泛的系统。变量类型决定了
    发表于 03-20 10:56 555次阅读
    C语言数据<b class='flag-5'>类型</b>有哪些

    C语言变量应用详解

    变量其实只不过是程序可操作的存储区的名称。C 中每个变量都有特定的类型类型决定了变量存储的大小和布局,该范围内的值都可以存储在内存中,运算
    发表于 03-18 11:18 495次阅读
    C语言<b class='flag-5'>变量</b>应用详解

    字符型、指针型等变量等该如何初始化

     对于数值类型变量往往初始化为0,但对于其他类型变量,如字符型、指针型等变量等该如何初始化呢?
    的头像 发表于 03-18 11:02 1740次阅读