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

    文章

    615

    浏览量

    29369

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

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    常用变量的介绍

    寄存器变量般较短的变量类型适合定义为寄存器变量,如short、char等; auto:c语言变量
    发表于 11-21 07:05

    搞懂石英晶振的类型和特征

    在频率控制领域,石英晶振大家都耳熟能详,但对XTAL、SPXO、VCXO、TCXO、OCXO这些不太常见的英文缩写可能会有点陌生,它们属于石英晶振家族的不同品类,功能与特性却各有千秋。
    的头像 发表于 11-14 14:54 458次阅读

    C语言开发单片机为什么大多数都采用全局变量的形式?

    的全是宝贵的栈内存,很容易出现栈溢出的问题。而且局部变量赋值、函数调用时的参数入栈出栈,对主频不高的单片机 CPU 来说,都是堆额外的指令开销,积少成多就会拖慢
    的头像 发表于 11-12 14:29 224次阅读
    C语言开发单片机为什么大多数都采用全局<b class='flag-5'>变量</b>的形式?

    工业交换机怎么选?搞懂不废话

    、什么是工业交换机? 工业交换机是种专为工业环境设计的网络设备,用于连接和管理工业现场的各种设备。与普通商用交换机相比,工业交换机具有以下特点: 高可靠性 :能够在恶劣环境下稳定工作。 高稳定性
    的头像 发表于 09-19 16:14 375次阅读

    三坐标测头座怎么选?读懂3大结构类型

    测头座是连接三坐标测量机运动轴与测针的关键部件,它的结构设计直接决定测头角度调整的灵活性、定位精度的稳定性,更影响着复杂零件测量的效率与可靠性。不同类型的测头座适用于不同的测量场景与自动化需求,所以
    的头像 发表于 09-11 16:49 654次阅读
    三坐标测头座怎么选?<b class='flag-5'>一</b><b class='flag-5'>文</b>读懂3大结构<b class='flag-5'>类型</b>

    itop-3568开发板驱动开发指南-实验程序的编写

    module_param_array 函数传递数组元素个数的变量 n_para 8、module_param(number, int, S_IRUGO);//传递 int 类型的参数 number,S_IRUGO 表示权限为可
    发表于 05-19 10:26

    升压电路搞懂 升压电路技术文档合集

    升压电路图集合,升压电路设计方案,电路设计技巧,升压电路搞懂;给大家分享 升压电路技术文档合集
    的头像 发表于 05-15 15:58 1.7w次阅读
    升压电路<b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>搞懂</b> 升压电路技术文档合集

    Ansible Playbook中的变量使用技巧

    在inventory中定义的连接变量(比如ansible_ssh_user);优先级第二。
    的头像 发表于 04-15 10:26 673次阅读

    在testbench中如何使用阻塞赋值和非阻塞赋值

    本文详细阐述了在个testbench中,应该如何使用阻塞赋值与非阻塞赋值。首先说结论,建议在testbench中,对时钟信号(包括分频时钟)使用阻塞赋值,对其他同步信号使用非阻塞
    的头像 发表于 04-15 09:34 1003次阅读
    在testbench中如何使用阻塞<b class='flag-5'>赋值</b>和非阻塞<b class='flag-5'>赋值</b>

    在starvision2上移植FreeRTOS,objdump后发现static变量的地址是0,怎么解决?

    链接脚本还是什么的问题。objdump后发现static变量的地址是0。 没太搞懂是为什么。下面是我的链接脚本 OUTPUT_ARCH("riscv"
    发表于 03-10 07:21

    搞懂POL全光网络

    在数字经济的浪潮中,企业积极拥抱人工智能、云计算、物联网(IoT)等前沿科技,促使业务云端化、连接多元化以及信息接入普及化,加速推动企业数智化进程。伴随转型的持续深入,企业园区网络遭遇前所未有的挑战:带宽需求激增,流量模式由东西向为主转向南北向为主,要求园区网络介质与架构革新,以匹配数智化发展的新需求。
    的头像 发表于 02-27 13:51 5726次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>搞懂</b>POL全光网络

    搞懂先进存储技术

    高性能计算(High Performance Computing, HPC)以超高的计算性能广泛应用于国民经济的各个领域,不仅用于气候模拟、石油勘探等传统产业,在生命科学、大数据等领域成为研究和解决挑战性问题的重要工具。高性能计算需要配备超强储存能力,本文对先进的存储技术做了简单介绍。
    的头像 发表于 02-26 17:42 1695次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>搞懂</b>先进存储技术

    C语言如何处理函数的返回值

    的那样,直接把 1234 赋值给了变量 ret? 搞懂这个问题不难,只要看下汇编代码就行。 把代码编译下,只编译不链接,得到的就是C对应的汇编代码。 这块是 test 函数,不用管上
    的头像 发表于 01-16 09:21 748次阅读

    搞懂汽车电控IGBT模块

    想要从零了解汽车电控IGBT模块看这篇就够了!根据乘联会数据,2022年6月新能源车国内零售渗透率27.4%,并且2022年6月29日欧盟对外宣布,欧盟27个成员国已经初步达成致,欧洲将于
    的头像 发表于 01-07 17:08 2411次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>搞懂</b>汽车电控IGBT模块

    搞懂软核的固化、启动和MultiBoot实现

    ;启动分为SREC解析及加快启动模式的ELF直读;最后就是MultiBoot实现的时候应该注意什么。 固化 软核的固化和外部FLASH及应用程序大小有很大关系。小应用程序,使用BRAM即可运行,固化的时候和逻辑起固化即可运行,这时候不管外部是什么类型FLASH,和逻辑固
    的头像 发表于 12-07 11:23 2911次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>搞懂</b>软核的固化、启动和MultiBoot实现