数组

一、数组元素和普通变量

所谓数组,只是一次性定义多个变量。这些变量的类型是一致的、变量名之间仅索引有差别、在这些变量内存中是连续的。例如,定义如下数组:

int arr[3];

实际上相当于定义了这样3个变量:

int arr[0];
int arr[1];
int arr[2];
// 虽然在语法上并不可行,但这里是为了说明相当于定义了三个变量,变量名分别为arr[0]、arr[1]、arr[2]

同样地,我们可以直接定义3个普通变量:

int a;
int b;
int c;

这样看起来似乎数组的存在是多此一举,但当我们要定义很多变量时,数组就有它的优势。一方面不必考虑为多个变量起名字,另一方面也不必写多个语句来定义多个变量(即使C/C++提供了像 **int a,b,c;**这样简写的方式,对于多个变量的定义也是不方便的)
数组元素都可以当作一个普通变量,而这个变量的变量名就是“数组名[索引值]”。而数组元素最大的特点是它们的内存地址一定是连续且和索引值顺序一致,也正是这一特点保证了可以按索引的方式使用数组元素。
在这里插入图片描述
除了连续存储,在其他使用方面和普通变量并没有什么区别。
为了更方便地为每个元素进行初始化,数组支持多个元素的快速初始化:

int arr[3] = {
   1, 2, 3};

这实际上和先定义数组再对每个元素进行赋值并没有什么区别:

int arr[3];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;

这两种方式的结果是一致的,不过第一种方式更符合数组产生的初衷。

数组元素的赋值

像普通变量一样,可以将数组的每个元素当作普通变量那样直接使用,在赋值或是初始化时将值赋给对应的元素(变量)。在赋值过程中同样遵循像普通变量赋值那样的类型转换等规律,例如:

int arr[3];
arr[0] = 1;	// int字面量赋值给int变量
arr[1] = 123.45F; // float类型字面量赋值给int变量
arr[2] = 'c'; // 字符型字面量(int)赋值给int变量

相应的普通变量也可以这样使用:

int a,b,c;
a = 1
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值