1 使用Arduino数组的示例-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

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

3天内不再提示

使用Arduino数组的示例

我快闭嘴 来源:创客少年 作者:创客少年 2022-09-06 10:28 次阅读

Arduino 数组

数组是连续的一组相同类型的内存位置。要引用数组中的特定位置或元素,我们指定数组的名称和数组中特定元素的位置编号。

下图给出了一个名为C的整数数组,它包含11个元素。通过给出数组名称,后面跟特定元素的位置编号:方括号([]),你可以引用这些元素中的任何一个。位置编号更正式地称为下标或索引(该数字指定从数组开始的元素数)。第一个元素具有下标0(零),有时称为零元素。

因此,数组C的元素是C[0],C[1],C[2]等等。数组C中的最高下标是10,其比数组中的元素数少1。数组名遵循与其他变量名相同的约定。

7c54569c-2d1b-11ed-ba43-dac502259ad0.jpg

下标必须是整数或整数表达式(使用任何整数类型)。如果程序使用表达式作为下标,则程序评估表达式以确定下标。例如,如果我们假设变量a等于5,变量b等于6,那么语句将数组元素C[11]加2。

下标数组名是一个左值,它可以在赋值的左侧使用,就像非数组变量名一样。

让我们更仔细地检查给定图中的数组C。整个数组的名称是C。它的11个元素被称为C[0]到C[10]。C[0]的值为-45,C[1]的值为6,C[2]的值为0,C[7]的值为62,C[10]的值为78。

要打印数组C的前三个元素中包含的值的总和,我们将写:

Serial.print (C[ 0 ] + C[ 1 ] + C[ 2 ] );

要将C[6]的值除以2并将结果赋值给变量x,我们将写:

x = C[ 6 ] / 2;

声明数组

数组占用内存中的空间。要指定元素的类型和数组所需的元素数量,请使用以下形式的声明:

type arrayName [ arraySize ] ;

编译器保留适当的内存量(回想一下,保留内存的声明更恰当地被称为定义)。arraySize必须是大于零的整数常量。例如,要告诉编译器为整数数组C保留11个元素,请使用声明:

int C[ 12 ]; // C is an array of 12 integers

数组可以声明为包含任何非引用数据类型的值。例如,可以使用字符串类型的数组来存储字符串。

使用数组的示例

本节提供了许多示例来演示如何声明,初始化以及操作数组。

示例1:声明数组并使用循环来初始化数组的元素

程序声明一个10元素的整数数组n。使用For语句将数组元素初始化为零。与其他自动变量一样,自动数组不会隐式初始化为零。

示例


		

int n[ 10 ] ; // n is an array of 10 integers

void setup () {

Serial.begin(9600); //串口初始化

}

void loop () {

for ( int i = 0; i < 10; ++i ){ // initialize elements of array n to 0 n[ i ] = 0; // set element at location i to 0 Serial.print (i) ; Serial.print (‘ ’) ; } for ( int j = 0; j < 10; ++j ){ // output each array element's value Serial.print (n[j]) ; Serial.print (‘ ’) ;

}

}

示例2:使用初始化器列表在声明中初始化数组

数组元素也可以在数组声明中初始化,通过在数组名后面跟随等号和一个用大括号及逗号分隔的初始化器列表。

示例


		

// n is an array of 10 integers

int n[ 10 ] = { 32, 27, 64, 18, 95, 14, 90, 70, 60, 37 } ;

void setup () {

Serial.begin(9600); //串口初始化

}

void loop () {

for ( int i = 0; i < 10; ++i ){ // initialize elements of array n to 0 Serial.print (i) ; Serial.print (‘ ’) ; } for ( int j = 0; j < 10; ++j ){ // output each array element's value Serial.print (n[j]) ; Serial.print (‘ ’) ;

}

}

示例3:对数组的元素求和

通常,数组的元素表示要在计算中使用的一系列值。例如,如果数组的元素表示考试成绩,教授可能希望将数组的元素进行加总,并使用该总和来计算班级考试的平均成绩。程序将包含在10元素整数数组a中的值进行求和。

示例


		

const int arraySize = 10; // constant variable indicating size of array

int a[ arraySize ] = { 87, 68, 94, 100, 83, 78, 85, 91, 76, 87 };

int total = 0;

void setup () {

Serial.begin(9600); //串口初始化

}

void loop () { // sum contents of array a

for ( int i = 0; i < arraySize; ++i ) total += a[ i ]; Serial.print(“Total of array elements : ") ;

Serial.print(total) ;

}

结果- 它会产生以下结果:

Total of array elements: 849

数组对Arduino很重要,应该需要更多的关注。以下是学习Arduino应该清楚的与数组相关的重要概念:

序号 概念和描述
1 将数组传递给函数要将数组参数传递给函数,请指定没有任何括号的数组的名称。
2 多维数组具有两个维度(即下标)的数组通常表示由排列在行和列中的信息组成的值的表格。

审核编辑:汤梓红

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

    关注

    1

    文章

    417

    浏览量

    25939
  • Arduino
    +关注

    关注

    188

    文章

    6468

    浏览量

    186946

原文标题:Arduino 数组

文章出处:【微信号:创客少年,微信公众号:创客少年】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    求使用EAP协议的Arduino代码示例

    我正在寻找一个使用 EAP 协议的 ESP8266 的可用示例,但我还没有通过使用 Arduino 框架成功,所有参考文献都有问题,即它们是需要在尚未最终确定的线程中更改的代码。有人可以指出实现此功能的链接吗?
    发表于 02-27 06:52

    Arduino IDE与Blynk示例的编译器错误怎么解决?

    Arduino IDE:1.6.5 Blynk 库:0.3.1 板设置:通用 ESP8266 模块演示示例 :BlynkBlink 硬件:ESP8266-12 例如,当我编译
    发表于 06-12 08:39

    基于Arduino无驱动板程序示例

    基于Arduino无驱动板程序示例
    发表于 12-17 21:16 2次下载

    掌握shell编程中数组的常见用法及示例

    给大家分享下数组的用法小例子,希望能给大家一点帮助。其实SHELL的数组很简单,好用。我们学习都应该遵循简单、易用的原则。shell编程中数组的简单用法及示例    新
    发表于 04-02 14:34 575次阅读

    Arduino雨滴传感器的使用示例代码免费下载

    本文档的主要内容详细介绍的是Arduino雨滴传感器的使用示例代码免费下载。
    发表于 03-27 11:39 43次下载
    <b class='flag-5'>Arduino</b>雨滴传感器的使用<b class='flag-5'>示例</b>代码免费下载

    Arduino中断学习

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录Arduino中断一、外部中断学习1、Arduino 开发板的外部中断引脚2、一个从轮询到中断的代码改进1) 轮询示例2
    发表于 12-16 16:47 3次下载
    <b class='flag-5'>Arduino</b>中断学习

    Arduino语法详解含示例详解

    Arduino语法详解_含示例详解
    发表于 07-19 14:09 6次下载

    指针数组示例说明

    数组是一种类型的数的集合
    的头像 发表于 08-12 16:27 1120次阅读

    二维数组数组指针以及指针数组

    二维数组数组指针以及指针数组
    的头像 发表于 08-16 09:02 2645次阅读

    如何将DHT11连接到Arduino并提供示例代码

    德赢Vwin官网 网站提供《如何将DHT11连接到Arduino并提供示例代码.zip》资料免费下载
    发表于 12-07 15:19 2次下载
    如何将DHT11连接到<b class='flag-5'>Arduino</b>并提供<b class='flag-5'>示例</b>代码

    一些有趣的数组相关的SystemVerilog约束

    我们在工作中常常会针对数组施加各式的约束,下面列举一下有趣的Systemverilog数组约束示例
    的头像 发表于 03-08 13:12 957次阅读

    一些有趣的数组相关的SystemVerilog约束

    我们在工作中常常会针对数组施加各式的约束,下面列举一下有趣的**Systemverilog数组约束**示例
    的头像 发表于 05-30 11:13 786次阅读

    Arduino光敏电阻示例KY-018

    德赢Vwin官网 网站提供《Arduino光敏电阻示例KY-018.zip》资料免费下载
    发表于 07-10 11:17 3次下载
    <b class='flag-5'>Arduino</b>光敏电阻<b class='flag-5'>示例</b>KY-018

    数组的定义 什么是数组

    数组 数组是内置类型,是一组同类型数据的集合,它是值类型,通过从0开始的下标索引访问元素值。 在初始化后长度是固定的,无法修改其长度。当作为方法的参数传入时将复制一份数组而不是引用同一指针。
    的头像 发表于 10-09 09:39 1888次阅读

    自己编写函数示例代码很难吗?分享几个示例

    Q A 问: Arduino Uno的函数示例 我决定自己编写函数示例代码,因为这应该是Arduino中的基本示例。网络上确实有关于使用函数
    的头像 发表于 11-16 16:05 513次阅读
    自己编写函数<b class='flag-5'>示例</b>代码很难吗?分享几个<b class='flag-5'>示例</b>!