day10数组的学习

对于数组的定义方式是这样的

这边是对数组的一个使用方式,对于字符数组来说双引号默认尾部有一个\0,如果你的数组括号里面没写入数字,自动根据你的数量去匹配,但是记住,对于双引号来说,需要多一个

这是什么意思呢,就是来获取数组的地址,由于是int类型,所以每次间隔为四,一维数组在内存中是连续存放的

二维数组的定义和初始化

对于二维数组来说,都是三行四列,则依次进行,前四个,然后三列,不够的进行补0

或者二维数组你可以进行这样去做都是可以的

对于二维数组来说,需要知道列数(就是你一行有多少个),然后系统会推测你的行数

这就是二维数组的输出

二维数组进行改换值

这个就是将二维数组当成一维数组的数组,这个是一样的

那么问题来了,对于二维数组的存放空间是什么样子的呢?

对于二维数组是一样的,都是按顺序进行排列

是这样进行排列的

其实对于这两个数组来说都是一致的,都是十二个内存空间的存放,但是访问的方式是不太一样的

什么叫做越界打印,就是对于一些数组来说,明明只有0-5,但是你打印了6-9,确实会打印,打印的不是你的东西,知道吗

讲了冒泡排序,后面再看吧,不急

数组名就是首元素地址

由于表示的是整个数组的地址,则将其加1,即到了数组后,直接加了40,由于int类型是4,10个元素是这样的

有两种形式知道吗

这里的arr代表的是什么意思呢,代表的是第一行的地址,也就是前四位

为什么那么说呢?当你对arr进行加1的时候

你可以发现,在最后两位上面加了1,也就是16,对于int类型来说,就是四个,也就是第二排

对于二维数组来说,怎么去求一个数组的行数和列数呢,首先来看第一行,由于arr代表的是整个数组,arr[0]代表的是第一排的数组,则相除就可以得出它的行数,怎么得到一个数组的列数呢,只需要将一行的数组求出来,然后求出第一行第一列的数组,然后求出来就可以得到有多少列

其实这是什么意思呢?我们再来细想想,其实就是要理解到,对于arr本身的意思不论是在一维还是二维都是代表的是首元素的地址,比如这边是二维,arr,arr[0],都是这里的三行四列的第一行,但是当你进行sizeof的时候,sizeof(arr)则代表了整个数组的内存,sizeof(arr[0])则是代表了第一行的数组

相关推荐
●VON6 小时前
CANN推理引擎:从云端到边缘的极致加速与部署实战
学习·react native
笔画人生6 小时前
深度解析 CANN 项目:以 `ops-transformer` 为例探索高性能 AI 算子库
学习·开源
AI视觉网奇7 小时前
3d数字人 ue blender 绑定衣服对齐 2026
学习·ue5
Nan_Shu_6147 小时前
学习: Blender 基础篇
学习·blender
奶茶精Gaaa8 小时前
工具分享--json在线转换工具
学习
wdfk_prog8 小时前
[Linux]学习笔记系列 -- [drivers][I2C]I2C
linux·笔记·学习
盐焗西兰花8 小时前
鸿蒙学习实战之路-Reader Kit自定义字体最佳实践
学习·华为·harmonyos
近津薪荼9 小时前
dfs专题5——(二叉搜索树中第 K 小的元素)
c++·学习·算法·深度优先
敏叔V58710 小时前
AI智能体的工具学习进阶:零样本API理解与调用
人工智能·学习
2501_9418649610 小时前
科学方法论破解学习时间堆砌误区
学习