C语言知识点之 数组

1.

一维数组的创建
数组:一组相同元素类型的集合

C99之后引入变长数组,数组的大小可以用变量指定的:
Int arr[n];
但VS2022/VS2019中不支持
注意:变长数组不能初始化

一维数组的初始化
不完全初始化:
指定大小的数组,初始化前几个元素 剩余的元素默认初始化为0

2.

一维数组的使用
[]下标访问操作符

3.

一维数组在内存中的存储
每个元素的地址是由低到高且连续的,地址编号之差为元素类型的大小,单位:字节

十六进制:
0 1 2 3 4 5 6 7 8 9 a b c d e f
0 ~~~~~~~~ 15

二维数组的创建和初始化
格式:
Int arr[行数][列数]

初始化:
int arr[2][3] = {{1,1,1},{2,2,2}};

图解:
1 1 1
2 2 2

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

图解:
1 2 0
2 3 4
1 0 0

注意:二维数组初始化后,可以省略行数,但列数不能省略

4.

二维数组的使用
通过下标访问

5.

二维数组在内存中的存储
每一个元素、每一行元素都是连续存储的

由此可知,当列数不知道时,无法存储下一行,所以在初始化时列数不可省略

二维数组可理解为一维数组的数组

6.

数组越界
数组的下标有范围限制
范围是0~(n-1)
当数组的下标超出范围,就是数组越界
注意:数组越界编译器不会报错
需要自己检查

6.

数组作为函数参数
时间点:16:00

7.

数组名
数组名就是地址
通常来说,数组名是数组首元素的地址
但是,有两个例外:
sizeof(数组名);
计算的整个数组的大小,单位是字节
&数组名;
这里的数组名表示整个数组,取出的是整个数组的地址

可以写成
所以不能在自定义函数内求元素个数

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值