数组(1)

一维数组

  • 创建

             结构:   类型  数组名[ 数组长度(可省略) ];   //  [ ] --> 数组下标引用操作符。

  • 初始化

        完全初始化:

例:int arr[3] = {1,2,3}; // 数组下标是从0开始。

        不完全初始化:

例:int arr[3] = {1,2};  // 此时数组未初始化的值自动补为0。

fbd5cf98e2184354a78fa446d11aaad5.png

 

  • 遍历

利用循环遍历打印数组

b1e6f1e71a424a2ea583113417159ede.png

 

  • 内存中的存储方式

打印地址用 "%p" ,打印的结果为十六进制。

 b8e9499b42aa4ffa95b00c625e044067.png

由打印结果可以看出,创建的数组是一块连续的地址,每个数组元素占用4个字节。


二维数组

  • 创建

 结构:   类型  数组名[行][列];  //初始化时,行可以省略,列不能省略。

  • 初始化

与一维数组相同

这里三种定义数组的方式都相同,将所有元素写在一行用逗号分开打印方式是将一行打印完再接着打印第二行,以此类推。

cc35715e0a3b41ea94cd0c7073de0aa7.png

 由于二维数组与一维数组类似,所以我们在初始化时还可以用定义一维数组的方式一行一行的定义二维数组。如上:

  • 遍历

 外层循环行,内层循环列。

6845aafe56cd4562982a9cc0a1dd10c6.png

  • 内存中的存储方式

如下:与一维数组相同,在我们的理解中是一个三行五列的值,但在内存中仍然是一段连续的空间。每个元素占用4个字节。

337b7f7769ba48b6952bae29bbd802cd.png


作为函数参数

 首先,数组作为函数参数时不能仅仅将数组名(指向的只有数组的第一个元素)作为实参,还要将数组长度一并传递。

2d408feaa4644e5d89491d0225572da6.png

 数组长度的计算方法。因为此时定义的数组为int型(占4个字节),所以sizeof(arr)为整个数组占用的字节数,sizeof(arr[0])为数组第一个元素占用的字节,相除便会得到数组的长度。

3ee4229ec08c49b29ad218595adbd8cb.png

 

 

 

 

 

  • 22
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值