day10数组的学习

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

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

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

二维数组的定义和初始化

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

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

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

这就是二维数组的输出

二维数组进行改换值

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

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

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

是这样进行排列的

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

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

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

数组名就是首元素地址

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

有两种形式知道吗

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

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

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

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

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

相关推荐
gjf05_052 小时前
人该怎样活着呢?版本75.8
学习
li星野3 小时前
【学习记录】PCB与PCBA核心知识全解析:从设计到制造的关键细节
学习·制造
卿卿的产品经理日记4 小时前
【AI产品经理实战】Day 35|从“沉迷工具“到回归 AI 底层:Skill 收官、系统复盘与下一个 13 天
人工智能·学习·产品经理
一条泥憨鱼4 小时前
【从0开始学习计算机网络】| ARP 协议:地址解析,ARP 欺骗,链路层寻址
网络·后端·学习·计算机网络
HY小宝F5 小时前
树莓派智能摄像头系统 30 天重学计划之 Day 04 · HTTP / API:控制链入口 —— 学习总结
网络协议·学习·http
悟乙己6 小时前
AFAC2026 赛题四金融长文本 Agent竞赛学习笔记:赛题解析(一)
笔记·学习·金融
霍霍的袁6 小时前
【C++】哈希表实现指南:从原理到开放定址法、链地址法的实现
c++·学习·哈希算法·散列表·visual studio
PC2005-cloud7 小时前
MySQL学习笔记:GTID 主从复制,从原理到实践,告别传统 Binlog+Position 的痛点
笔记·学习·mysql
starsky762387 小时前
Agent学习——上下文工程(二)
学习
Dark_Fairy9 小时前
CMeKG_tools 知识图谱项目速成教程(13课共24H)
学习