一维和二维数组

本文详细介绍了C语言中一维数组的创建、初始化方法、引用方式以及内存中的连续存储结构。同时扩展至二维数组,探讨了其创建规则、初始化策略和内存布局。
摘要由CSDN通过智能技术生成

一.一维数组

1.创建:

一维数组的创建需要包括类型,数组名以及常量表达式,具体如下

数组类型  数组名[常量表达式]

其中,常量表达式可以包含数据常量和符号常量,且C语言不允许对数组的大小进行动态定义。

如,int n = 3 ;int a[n] ;是不合理的。

2.初始化:

 (1)可以对数组内的所有元素进行初始化,如:int a[3] = { 1,2,3 } ;

   (2)按照上述赋初值,可以省略常量表达式,如:int a[] = { 1,2,3 } ; 

 (3)部分元素赋初值,[]内的常量不可以省略。且如:int a[5] = { 1,2,3 } ; 其余元素默认为0

 (4)建议在数组定义后进行初始化,以防系统对数组随机赋值。

3.引用:

数组的使用是通过下标来使用的。具体如下图

4.在内存中的存储:

在内存中连续存放,可以通过打印数组内元素的地址来观察。(%p可以打印地址)如下

不难看出,从第一个数组元素到第五个,其地址一直在变大,且每次变化4,也就是4个字节(一个内存单元)所以数组中的元素是连续存放的

二.二维数组

1.创建:

二维数组的创建是通过行和列来创建的,包括类型,数组名以及两个常量表达式。具体如下

数组类型 数组名[常量表达式1][常量表达式2]

  如 arr[3][4] 就代表了一个三行四列的数组。

2.初始化:

(1)可以分行对数组内的所有元素进行初始化,如:int a[3][3] = { {1,2,3},{3,4,5},{4,5,6} } ;

   (2)按照上述赋初值,可以省略常量表达式1(二维数组一般来说可省略常量表达式1,也就是行,常量表达式2也就是列不省略),如:int a[][3] = { {1,2,3},{3,4,5},{4,5,6} } ;

 (3)建议在数组定义后进行初始化,以防系统对数组随机赋值。

3.引用:

二维数组的使用仍为下标:具体如下图:

4

4.在内存中的存储:

二维数组在内存中也是连续存放的。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值