我的c++学习记录 七————数组、字符串和指针
数组
数组用于存储一系列类型相同的元素。例如定义五个类型相同的变量,可以不用定义五个变量,只需要将五个值存到一个数组中即可。
上图定义了一个包含五个元素的 int 数组。第一个元素的编号为 0,最后一个编号为 4;在 C++ 中,数组的第一个元素总是编号为 0。
数组的声明格式:
type name[elements] //一维数组的声明格式。
其中 type 为数组类型,name 为数组名,elements 表示数组长度。数组长度就是数组最多可以存放的元素个数。
声明不同类型的数组:
int a[5]; //包含五个元素的 int 数组。
float a[5]; //包含五个元素的 float 数组。
char a[5]; //包含五个元素的 char 数组。
初始化数组
默认情况下,数组中所有元素的值在声明数组时是未确定的。
若要在声明数组时,将数组中的元素初始化为特定的值,可以使用 {} 实现,例如初始化数组 int a[5]:
int a[5] = {1,2,3,4,5}
初始化结果为:
初始化数组时,若填充元素不完整,则剩下元素的值默认为 0。例如:
int a[5] = {1,2,3}
其初始化结果为:
访问数组
访问数组的表达式为:
name[index]
其中 name 为数组名称,index 为元素编号。name[index] 称为数组下标。
例如定义且初始化一个数组:int a[5] = {1,2,3,4,5}。可以得到 a[0]=1,a[1]=2,a[2]=3,a[3]=4,a[4]=5。
用图形化方式更直观的表示此数组:
则 a[2] 可以访问数组中的元素 3。
新建 arr1.cpp 文件,输入:
#include<iostream>
using namespace std;
int main ()
{
int a[5] = {1,2,3,4,5}; //初始化数组。
cout<<a[2]<<endl; //访问数组。
return 0;
}
程序结果:
多维数组
C++ 中支持多维数组,多维数组是指二维及以上的数组,其表达式为:
type name[index1][index2][index3]...[indexn]
其中 index 的数量决定了数组的维度,例如 type name[index1][index2] 表示的则是一个二维数组。
二维数组
可以将二维数组看成一张二维表。定义一个二维数组 a[3][5]:
二维数组 a[3][5] 可以表示成一张三行五列的二维表,其初始化顺序为:从左到右,从上到下。上图的初始化顺序为: