数组与指针专题
数组与指针专题
华清远见熊家
今天我们对数组与指针的知识做一个小结。包括数组、指针数组、数组指
内容需要下载文档才能查看针。
一、一维数组与指针
在学习数组之前,必须对数组名字代表的含义非常的清楚,数组名代表的数组的首地址,通过这个首地址我们可以对这块内存区域进行访问,因为数组分配空间是按照顺序依次
内容需要下载文档才能查看 内容需要下载文档才能查看分配的。
&a与&a+1之间相差了几个元素呢?
在回答这个问题之前,我们需要明白几个知识点,我们说数组名a代表着数组的首地址,a[i]《==》*(a+i)这个表达式是等价的,a+i表示的是以内存地址a移动了i个int的地址。
我们同样还看到了另外一个有趣的现象,a,&a[0][0],&a这三个元素打印的地址是相同的。
但是他们三个的意义却是有很大的不同。a代表数组的首地址,在其是一维数组时,与&a[0][0]代表的意义一样,首地址。&a代表的是把数组看成一个整体取地址&a+1则表示数组作为一个整体移动了一个元素(数组),其实相当于移动了5*4=20个字节
&a+1-&a=0xbfd5f6b8-0xbfd5f6a4(注:当然不同类型的地址是不能相减的)
以下是利用数组名,指针变量来访问数组元素。本地都是数组的首地址,想象一下首地址
内容需要下载文档才能查看的意义。
运行结果如下:
内容需要下载文档才能查看
p[i]表示的意义就是运算式*(p+i),同样的a[i]<==>*(a+i)
如果p=a时,那么这四个表达式的值都是相等的。
二、二维数组与指针
2.1二维数组的各个地址的含义
在二维数组中,我们又有哪些需要注意的呢?数组名代表了数组的首地址,也代表了第一
内容需要下载文档才能查看行的首地址。
内容需要下载文档才能查看执行结果:
咱们通过上面的程序,可以知道的是a代表了数组的首地址,代表了第一行的首地址。记住了它这里与&a[0][0]值相等但是并没有代表他的含义。我们可以把二维数组这么认为,把每一行当成一个整体作为一个元素,所以有咱们的a[0],a[1]正如我们初始化里面的一样,把每行当成一个数组用{}。
分析完上述,之后我们来开始接着往下分析,它和指针之间的碰撞,看看会发生哪些意想不到的化学反应呢,记住地址是本质。
2.2指针数组
看到指针和数组的结合,不要畏惧,我们首先来分析它的字面的意思,指针数组注意定语是数组,也就是说数组时核心,那么我们想想数组的话就会有元素的,那么比较特殊,它的元素不是我们前面学的整形、字符型。而是指针类型。也就是说元素是一个一个的地址。
内容需要下载文档才能查看 内容需要下载文档才能查看
执行结果:
以上三种方式情况都能访问到我们的二维数组。那么我们来一一分析一下:
首先我们定义的指针数组,那么数组的元素只能是指针,同时我们上面进行了分析,将二维数组的每行看成是一个一维数组,那么a[0],a[1]就是每行的首地址。那么我们初始化指针数组就顺理成章了。此时数组a里面就有两个元素a[0]和a[1]。
p[0]==a[0]p[1]==a[1],知道每行的首地址移动j个元素,实际偏移的地址量sizeof(类型)*j个字节。那么知道了地址取出这个单元个的值,加*就ok了
我们知道带有中括号的表达式可以这么写p[i]==*(p+i)
2.3数组指针
上面我们分析了指针数组,现在来分析数组指针。同样我们来看定语是指针,那么作为指针就应该有指向了,只不过它指向的是一个数组,一个什么样的数组呢,它指向一个包含N个元素的一维数组。原型如:int(*p)[N];
内容需要下载文档才能查看 内容需要下载文档才能查看
执行结果:
大家要注意的是类型的是为指针变量赋值的时候,类型要匹配
二维数组a代表着数组名,同时也是第一行的首地址,我们说把每个一维数组当成一个整体,那么我们的二维数组就成了一个一维数组了,一维数组怎么取元素的呢?a[0],a[1]…a[i]就是这个二维数组中每一个一维数组的值,但是切记它也只是一个地址。
所以取整个数组的元素的值就有了上面的表述方式了。*(a[i]+j),*(*(a+i)+j),i表示行指针a,移动的行数,取出它的值是一行的首地址,在移动j表示在此行的基础上移动的列数,最终得到的是这个数组第i行j列的地址了,取值的话就加上*就ok了。
咱们接着来深入分析,同样的给p变量赋值,咱们来看看还有没有别的方式呢,数组指针,本质是一个指针,指向了一个数组,那么它里面存放的是一个地址。你可以把理解为一个二级指针。这样也是可以的。
下载文档
热门试卷
- 2016年四川省内江市中考化学试卷
- 广西钦州市高新区2017届高三11月月考政治试卷
- 浙江省湖州市2016-2017学年高一上学期期中考试政治试卷
- 浙江省湖州市2016-2017学年高二上学期期中考试政治试卷
- 辽宁省铁岭市协作体2017届高三上学期第三次联考政治试卷
- 广西钦州市钦州港区2016-2017学年高二11月月考政治试卷
- 广西钦州市钦州港区2017届高三11月月考政治试卷
- 广西钦州市钦州港区2016-2017学年高一11月月考政治试卷
- 广西钦州市高新区2016-2017学年高二11月月考政治试卷
- 广西钦州市高新区2016-2017学年高一11月月考政治试卷
- 山东省滨州市三校2017届第一学期阶段测试初三英语试题
- 四川省成都七中2017届高三一诊模拟考试文科综合试卷
- 2017届普通高等学校招生全国统一考试模拟试题(附答案)
- 重庆市永川中学高2017级上期12月月考语文试题
- 江西宜春三中2017届高三第一学期第二次月考文科综合试题
- 内蒙古赤峰二中2017届高三上学期第三次月考英语试题
- 2017年六年级(上)数学期末考试卷
- 2017人教版小学英语三年级上期末笔试题
- 江苏省常州西藏民族中学2016-2017学年九年级思想品德第一学期第二次阶段测试试卷
- 重庆市九龙坡区七校2016-2017学年上期八年级素质测查(二)语文学科试题卷
- 江苏省无锡市钱桥中学2016年12月八年级语文阶段性测试卷
- 江苏省无锡市钱桥中学2016-2017学年七年级英语12月阶段检测试卷
- 山东省邹城市第八中学2016-2017学年八年级12月物理第4章试题(无答案)
- 【人教版】河北省2015-2016学年度九年级上期末语文试题卷(附答案)
- 四川省简阳市阳安中学2016年12月高二月考英语试卷
- 四川省成都龙泉中学高三上学期2016年12月月考试题文科综合能力测试
- 安徽省滁州中学2016—2017学年度第一学期12月月考高三英语试卷
- 山东省武城县第二中学2016.12高一年级上学期第二次月考历史试题(必修一第四、五单元)
- 福建省四地六校联考2016-2017学年上学期第三次月考高三化学试卷
- 甘肃省武威第二十三中学2016—2017学年度八年级第一学期12月月考生物试卷
网友关注
- 高华证券-全球经济周评:新兴市场增长企稳和美联储政策缓和对市场的影响
- 兴业证券-美元回调的必然性
- 高华证券-全球经济周评:新石油秩序下的大宗商品和汇率
- 东莞银行-2015年第十一期流动性周报
- 招商证券-人民币国际化月报2015年第2期:离岸人民币流动性缘何紧张
- 国泰君安-实体经济研判之一:大宗反弹,经济趋稳
- 申万宏源-3月汇丰PMI初值点评:PMI回落预料之中货币财政有望双宽松
- 渤海证券-流动性分析周报:A股活跃强化分流压力,Shibor利率难现显著回落
- 国泰君安-中东也门危机及油价大涨点评:中东危机点火浇油,大宗商品受益
- 申万宏源-宏观日报:美国费城制造业指数不及预期,就业市场保持强劲
- 中国银行-全球经济金融问题研究2015年第3期(总第124期):2015日元国际化进程的货币职能演进及借鉴
- 中国银行-全球经济金融问题研究2015年第4期(总第125期):欧洲美元市场的借鉴与启示
- PR应用的操作技巧探讨
- 招商证券-国际资本与国内流动性监测周报(2015年3月第3周):汇率企稳缓解资金面对资本大举外逃的担忧
- 上海证券-三个维度阐述中国经济:聚焦博鳌论坛
- 兴业证券-美国数据两周详解(2015.3.15-2015.3.21):经济数据不佳,联储终于醒悟
- 上海证券-一周经济形势总结和市场观点比较:任性与理性的对决
- chp14_宏观经济分析
- 中信证券-国际宏观周报:联储议息信号偏鸽,欧盟推动投资计划
- 兴业证券-中国经济周报:从Chanel降价谈中国消费
- 中国银行-纽约金融:美国金融危机风险指标监测
- 国泰君安-大类资产配置与行业轮动之二:大宗商品的黎明
- 高华证券-日本经济分析:两年期限接近,日本央行面临信誉风险
- 国金证券-3月汇丰PMI预览值评论:3月汇丰PMI重返50以内,政策加码在即
- 招商证券-2015年1月中国跨境资本流动数据点评:跨境资本持续外流的情况已有改善
- 申万宏源-美联储失去“耐心”,但加息仍将“徐图缓进”
- 招商证券-中国货币政策如何平衡经济增长与汇率稳定两个目标:稳增长和稳汇率究竟哪个更重要
- 国金证券-周度数据追踪:政策双引擎提速进行时
- 高华证券-美股观点:回购窗口关闭对投资者而言是机遇
- 中金公司-海外宏观周报:工资增长缓慢支持美联储较晚、较慢加息
网友关注视频
- 外研版英语七年级下册module3 unit2第二课时
- 第12章 圆锥曲线_12.7 抛物线的标准方程_第一课时(特等奖)(沪教版高二下册)_T274713
- 苏科版数学八年级下册9.2《中心对称和中心对称图形》
- 沪教版牛津小学英语(深圳用)五年级下册 Unit 1
- 苏科版数学 八年级下册 第八章第二节 可能性的大小
- 冀教版英语四年级下册第二课
- 【部编】人教版语文七年级下册《过松源晨炊漆公店(其五)》优质课教学视频+PPT课件+教案,江苏省
- 二次函数求实际问题中的最值_第一课时(特等奖)(冀教版九年级下册)_T144339
- 【部编】人教版语文七年级下册《老山界》优质课教学视频+PPT课件+教案,安徽省
- 外研版八年级英语下学期 Module3
- 【部编】人教版语文七年级下册《老山界》优质课教学视频+PPT课件+教案,安徽省
- 北师大版数学四年级下册3.4包装
- 【部编】人教版语文七年级下册《泊秦淮》优质课教学视频+PPT课件+教案,天津市
- 【部编】人教版语文七年级下册《逢入京使》优质课教学视频+PPT课件+教案,辽宁省
- 每天日常投篮练习第一天森哥打卡上脚 Nike PG 2 如何调整运球跳投手感?
- 8 随形想象_第一课时(二等奖)(沪教版二年级上册)_T3786594
- 19 爱护鸟类_第一课时(二等奖)(桂美版二年级下册)_T3763925
- 第8课 对称剪纸_第一课时(二等奖)(沪书画版二年级上册)_T3784187
- 小学英语单词
- 外研版英语七年级下册module3 unit1第二课时
- 沪教版牛津小学英语(深圳用) 四年级下册 Unit 2
- 外研版英语三起6年级下册(14版)Module3 Unit2
- 苏科版数学七年级下册7.2《探索平行线的性质》
- 沪教版牛津小学英语(深圳用) 五年级下册 Unit 12
- 外研版英语七年级下册module3 unit2第一课时
- 沪教版牛津小学英语(深圳用) 五年级下册 Unit 7
- 沪教版牛津小学英语(深圳用) 五年级下册 Unit 10
- 冀教版小学数学二年级下册第二单元《有余数除法的整理与复习》
- 沪教版八年级下册数学练习册21.3(3)分式方程P17
- 化学九年级下册全册同步 人教版 第22集 酸和碱的中和反应(一)
精品推荐
- 2016-2017学年高一语文人教版必修一+模块学业水平检测试题(含答案)
- 广西钦州市高新区2017届高三11月月考政治试卷
- 浙江省湖州市2016-2017学年高一上学期期中考试政治试卷
- 浙江省湖州市2016-2017学年高二上学期期中考试政治试卷
- 辽宁省铁岭市协作体2017届高三上学期第三次联考政治试卷
- 广西钦州市钦州港区2016-2017学年高二11月月考政治试卷
- 广西钦州市钦州港区2017届高三11月月考政治试卷
- 广西钦州市钦州港区2016-2017学年高一11月月考政治试卷
- 广西钦州市高新区2016-2017学年高二11月月考政治试卷
- 广西钦州市高新区2016-2017学年高一11月月考政治试卷
分类导航
- 互联网
- 电脑基础知识
- 计算机软件及应用
- 计算机硬件及网络
- 计算机应用/办公自动化
- .NET
- 数据结构与算法
- Java
- SEO
- C/C++资料
- linux/Unix相关
- 手机开发
- UML理论/建模
- 并行计算/云计算
- 嵌入式开发
- windows相关
- 软件工程
- 管理信息系统
- 开发文档
- 图形图像
- 网络与通信
- 网络信息安全
- 电子支付
- Labview
- matlab
- 网络资源
- Python
- Delphi/Perl
- 评测
- Flash/Flex
- CSS/Script
- 计算机原理
- PHP资料
- 数据挖掘与模式识别
- Web服务
- 数据库
- Visual Basic
- 电子商务
- 服务器
- 搜索引擎优化
- 存储
- 架构
- 行业软件
- 人工智能
- 计算机辅助设计
- 多媒体
- 软件测试
- 计算机硬件与维护
- 网站策划/UE
- 网页设计/UI
- 网吧管理