数组(Array)是有序的元素序列,是相同数据类型的元素按一定顺序排列的集合。
注意:1.数组中的多个元素数据类型是相同的
2.数组按照一定顺序排列(与后文数组的使用和储存相呼应)
基本语法如下
存入数组中的常量值即为数组的元素,在创建数组时可以指定数组的大小和数组元素的类型。
- type是用来指定数组中元素的类型,可以是int,float,char,double......
- name可自行设置,有意义就行,与type之间有一个空格。
- [ ]中的常量值决定了数组的大小
利用大括号{}给定数组一些初始值,在{ }中输入即可。
数组也是有类型的,数组算是⼀种⾃定义类型,去掉数组名留下的就是数组的类型。
例如:
他们的数组名分别是:
C语⾔规定数组是有下标的,下标是从0开始的,假设数组有n个元素,最后⼀个元素的下标是n-1,下 标就相当于数组元素的编号,如下:
则元素的下标如下:
数组元素和下表
在C语⾔中数组的访问提供了⼀个操作符 [] ,这个操作符叫:下标引用操作符。
比如:
利用for循环结合下标引用操作符,将数组内的元素一一打印:
结果如下:
我们可以利用元素的地址,判断元素储存方式。在x86的环境下,地址是16进制,每个元素建相差4个字节(整型的大小为4字节),且是由小变大。
结果确实是每个元素的地址相差4个字节,由此证明:数组在内存中是连续存放的。
sizeof是C语言中是一个关键字,是可以计算类型或者变量大小的,计算结果单位是字节。因此我们可以利用整个数组的大小除以单个元素的大小来计算数组的大小。
计算结果:5,而数组的大小正是5。
前⾯学习的数组被称为一维数组,数组的元素都是内置类型的,如果我们把一维数组做为数组的元 素,这时候就是二维数组,二维数组作为数组元素的数组被称为三维数组,二维数组以上的数组统称为多维数组。
- 3表示行数
- 5表示列数
-
int表示元素类型是整型
与一维数组类似(下引操作符变成了俩个)
与一维数组类似
在C99标准之前,C语⾔在创建数组的时候,数组大小的指定只能使⽤常量、常量表达式,或者如果我们初始化数据的话,可以省略数组大小。这样的语法限制,让我们创建数组就不够灵活,有时候数组大了浪费空间,有时候数组又小了不够用的。 C99中给⼀个变长数组(variable-length array,简称VLA)的新特性,允许我们可以使用变量指定数组大小。
上面示例中,数组 arr 就是变长数组,因为它的长度取决于变量 n 的值,编译器没法事先确定,只 有运⾏时才能知道 n 是多少。 变⻓数组的根本特征,就是数组⻓度只有运⾏时才能确定,所以变⻓数组不能初始化。它的好处是程 序员不必在开发时,随意为数组指定⼀个估计的⻓度,程序可以在运⾏时为数组分配精确的⻓度。有 ⼀个⽐较迷惑的点,变⻓数组的意思是数组的⼤⼩是可以使⽤变量来指定的,在程序运⾏的时候,根 据变量的⼤⼩来指定数组的元素个数,⽽不是说数组的⼤⼩是可变的。数组的⼤⼩⼀旦确定就不能再 变化了。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/16049.html