手机浏览器扫描二维码访问
「别先记着抱怨,一会儿等我说完了你可能就知道为什么了。
」
「那好吧~」
我拖长了声音,发出了自己的抗议。
「好,我接着买薯片的案例。
就在我们刚从超市出来的时候,你妈妈给我打了一个电话,说赵叔叔来我们家做客了,让你给赵叔叔的女儿灵筠也买几包薯片,当然了,还要给她带几包,于是我们又回超市买薯片。
因为你妈妈喜欢吃香焗番茄味道的薯片,而灵筠喜欢吃香烤原味,你喜欢吃的是红酒牛排味的薯片,为了方便区分,于是你向收银小姐姐要了两个口袋,将香焗番茄味和香烤原味的薯片分别放到了不同的口袋中,这样我们这儿就有三个口袋,分别是红酒牛排味、香焗番茄味和香烤原味。
三个口袋提在手上很不方便,好在出门之前奶奶给了老爹一个布袋子,于是你就将这三个口袋一起放到了布袋当中。
」
「嗯,然后呢?这个不是很正常么?」
我点了点头,毫不在意地问道。
「问题的关键就在这里,我之前跟你说过,数组其实就是一个口袋,只是它会给口袋里面的东西编号。
既然现实中口袋里边能够再装口袋,那么c语言中呢?
设想一下,如果我们把地图的每一行数据都放到一个口袋(数组)里面,这样就会有8个口袋(数组),然后我们再用一个大口袋(数组)把这八个口袋(数组)装起来,这样大口袋中对小口袋的编号不就是行号么,每个小口袋里面的元素编号不就是列号了么?
这样一来,获取行号和列号就十分简单了,不需要进行计算。
」
「居然还有这种好东西,那c语言中是如何表示那个大口袋的?」
我眼睛一下子亮了,如果真有这个东西的话,的确要省事很多。
「在说大口袋之前,要先给你介绍一个概念,也就是数组的维度。
像我之前说的那个直接装薯片的口袋,也就是在c语言中直接装某种数据类型的数组,比如说:intarray[10],chararray[10],doublearray[10]这样的被叫做一维数组。
而刚刚说的大袋子,也就是里面放着小袋子的数组,在c语言中则是一个数组里面装的一维数组,这样的数组就叫做二维数组。
通过我们刚刚的分析,二维数组特别适合用来保存具有行和列这样的表格数据。
二比如说我们要定义一个4行3列的int型二维数组,那么就是这样的:int[4][3]。
其实按照我们装薯片的方式来解释更容易明白,定义一个大袋子,可以装4个小袋子,然后每个小袋子里面装了三包薯片。
有一点是需要注意的,那就是无论是大袋子还是小袋子要装几个元素必须在定义的时候指定清楚,否则编译器就会报错。
」
「哦~,原来是这样啊。
那三维数组是不是一个超级大袋子,里面装了几个大袋子,然后每个大袋子里面又装了几个小袋子,每个小袋子里面装了几包薯片。
按照一维数组、二维数组的规律来看,三维数组的表示方法应该就是:int[4][5][6]这种了吧?」
我摸着下巴推断道。
「完全正确!
其实从本质上来看,无论几维数组,其实都是一维,只是元素的类型不同罢了。
三维数组的元素类型是二维数组,二维数组的元素是一维数组,一维数组的元素是具体的数据。
不过为了方便理解才引入了维度这个概念,而且大家都是这么描述数组的,所以我们也就沿用吧。
」
老爹摸了摸我的头,笑着说道。
小三挺着肚子上门挑衅,婆婆在家朝她耀武扬威。唐洛然的婚姻一路磕磕绊绊,最终她递出了一纸离婚协议书。然而,全江城最有权势,同时也身为唐洛然丈夫的傅子琛对她说,我的字典里,没有离婚,唯有丧偶!丧偶?于是隔日,一条新闻消息传遍江城地产大鳄傅子琛妻子,唐氏千金唐洛然疑因抑郁选择轻生傅子琛从没有想过,五年前一心一意想要嫁给他的女人,在五年之后,竟然选择用这样偏激的方式逼他离婚!...
穿书成了傲娇女,坐拥亿万家产,出手扩卓随手百万从不眨眼。帅哥,主播,学霸,豪门总裁,分分钟搞定。男人很多,我要多选几个。这个主播帅呆了,打赏一百万。学霸没地方住,赏他一块地。...
何美静为了寻找突然失踪的双胞胎姐姐何丽景,她闯入了幽灵岛,据说这岛上有吃人的野兽,还有鬼怪出没,但为了自己的亲姐,她拼了。直到他们进了一个神秘的洞穴之中,才知道有一种让人变异的病毒,而这时候,他们又进入了一个地下世界,无意之中解开了一个封印,解救出里面的尸王,却夜夜被他缠。在得知地下世界里面有个大魔头,他们决定消灭这个恶魔,来拯救城市里中了病毒的人们,他们与恶魔展开了搏斗,面对异兽的追杀,面对壁画...
一代战帝萧逸重生都市,回到高中时代,成为那个人人可欺的小人物。这一世,我要站在绝巅!这一世,我要弥补所有遗憾!...
...
风水相师一说神秘无比,可最多也只能是相人相物。林睿偶得神眼,能看人吉凶。升级之路,漫长而凶险。各种际遇交织,无数神秘等待一一揭开。下等相人,中等相物,上等相国。林睿站在顶峰,道我欲相看地球,不知可否?...