一、知识讲解
为了在程序中代指一个“东西”,我们引入了变量的概念,而当我们需要代指许多个东西时,我们就引入了这次我们要学习的概念——数组(array)。
二、学习数组
在没有学习数组时,我们如果希望存储三个圆的半径,我们可能会声明int radius;,int radius1;,int radius2;这三个整数型变量。在 C++ 语言中,数组就是用来简化这种场景的,我们通过可以
int radius[3];
这样的方式声明一个数组,数组名为radius
,数组中包含3
个int
类型的元素。我们可以通过radius[0]
,radius[1]
,radius[2]
这样的方式对其中的元素进行使用。
请注意,在声明数组时,我们在方括号内写的数字表示了数组中的元素数,也可以称为 数组长度(array length),而我们在访问数组元素时方括号内写的数字则表示了数组中的元素编号,也可以称为 数组元素索引(index of array element)。
请注意,数组的第一个元素的索引是 0 而不是 1,相应的,一个长度为 n 的数组,它的最后一个元素的索引也就是 n-1 而不是 n 了。
数组的元素的值可以通过赋值去进行改变,比如我们希望将数组元素radius[1]
的值修改为2
,我们就可以写radius[1] = 2
。我们也可以像使用一个变量一样使用一个数组元素,比如我们可以通过
cout << radius[1] << endl;
的方式,直接输出radius[1]
当前的值。
同时,数组的索引可以是一个表达式。比如说当a
的值为2
时,数组元素radius[a]
就可以被视为radius[2]
,而如果这时,我们写radius[a - 1]
我们会将其视为radius[1]
。
对于变量、数组来说,除了在声明后对变量、数组元素进行赋值,我们还可以在声明它们的同时直接通过 初始化(initialization) 的方式让它们获得值。
例如,对于一个整数型的变量a
,我们以前都是在通过int a;
声明了它后,再用类似a = 5;
这样的形式对已经被声明的变量a
进行赋值。而如果在声明的同时进行初始化,我们则可以直接下面的这种方式。
int a = 5;
类似的,对于一个数组b
,我们可以通过int b[2];
声明了它之后,再用b[0] = 5;
,b[1] = 8
这样的方式对每个元素分别赋值。而如果在声明的同时进行初始化,我们则可以直接通过如下这种大括号包裹、逗号分隔的方式在声明的同时完成。
int b[2] = {5,8};
另外,如果我们在数组声明时进行了初始化,我们则可以不在方括号内说明数组的长度。也就是说,int b[2] = {5, 8};
可以被我们简写为int b[] = {5, 8};
。
三、总结
对于本次讲解数组的应用还有问题的可以在评论区留言
- 最新
- 最热
只看作者