复合数据类型介绍-数组

一、数组

一种可以存储多个同类型值的数据格式。每个值都存储在一个独立的数组元素中,计算机在内存中依次存储数组的各个元素。
在这里插入图片描述

1.1、数组的声明

数组的声明需要明确指出以下三点:
a. 存储元素类型
b.数组名
c.数组中的元素个数

通用格式如下:
typeName arrayName[arraySize];
arraySize是元素的个数,必须是整型常数或const值,也可以是常量表达式,即其中所有的值在编译时都是已知的。(不能是变量,因为变量的值是在程序运行的时候设置的)。
示例如下:

int month[12]  //create array of 12 int

1.2、数组的访问

单独访问数组元素的方法是使用下标或索引来对元素进行编号。C++数组从0开始编号,这可能与其他编程语言不同。使用带索引的方括号表示法来指定数组元素。
请注意最后一个元素的访问索引要比数组长度小1。编译器不会检查使用的下标是否有效,但是程序运行以后可能会引发问题,包括但不限于破坏数据或导致程序异常终止,所以编程时要确认访问使用的下标是有效的。
例如months[0]是months数组的第一个元素,months[11]是months数组的最后一个元素。

1.3、数组的初始化

a. 只有在定义数组的时候才能使用初始化,此后不再允许,也不能将一个数组赋值给另一个数组。(但是可以通过下标分别给数组中的元素赋值)

示例如下:

int cards[4] = {1, 2, 3, 4}; //Okay
int hands[4]; //Okay
hands[4] = {5, ,6, 7, 8}; //Not allowed
hands = cards; //Not allowed

doubel input[4] {1.2, 2.3, 5.6, 7.8}; //C++11 is Okay, ignore "="
int counts[10] = {}; 				  //C++11 is Okay, all elements set to 0
float balance[100] {};				  //C++11 is Okay, all elements set to 0

b. 初始化数组时,提供的数组可以少于数组声明的元素数量。

float tips[5] = {2.0, 3.0};

c. 如果是只对数组的一部分进行初始化,则编译器将其他元素设置为0,所以如果需要将数组所有元素初始化为0,则需要显式的将第一个元素初始化为0,然后让编译器将其他的元素都初始化为0即可。
如果初始化为{1}则第一个元素被赋值为1,其他的元素还是设置为0。

long total[100] = {0};
int days[31] = {1};

d.如果初始化数组时方括号内元素个数为空,C++编译器将计算元素个数,自动确定数组元素的个数。

short things = {1358}//Maybe not good
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值