- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[计算机]数组与指针的艺术
数组与指针的艺术
深入探索C/C++数组与指针的奥秘
作者:CSDN-supermegaboy
整理:ZeroPointer
说明: 2
原文链接: 2
前言 3
第一章 数组与指针概念剖析 4
第二章 数组名是一个指针常量吗? 8
第三章 数组的解剖学 10
第四章 []运算符的本质 12
第五章 字符串字面量---一个特殊的数组 14
第六章 指针与const 16
第七章 右左法则----复杂指针解析 19
第八章 柔性数组成员 22
第九章 C99可变长数组VLA详解 24
第十章 动态数组 28
说明:
本文由supermegaboy编写并发布于CSDN博客中。整理于2011年8月5日/supermegaboy/archive/2009/11/23/4855036.aspx
第一章:数组与指针概念剖析 /supermegaboy/archive/2009/11/23/4855027.aspx
第二章:数组名是一个指针常量吗?/supermegaboy/archive/2009/11/23/4855018.aspx
第三章:数组的解剖学/supermegaboy/archive/2009/11/23/4855010.aspx
第四章:[]运算符的本质/supermegaboy/archive/2009/11/23/4855000.aspx
第五章:字符串字面量---一个特殊的数组/supermegaboy/archive/2009/11/23/4854987.aspx
第六章:指针与const
/supermegaboy/archive/2009/11/23/4854974.aspx
第七章:右左法则----复杂指针解析/supermegaboy/archive/2009/11/23/4854965.aspx
第八章:柔性数组成员/supermegaboy/archive/2009/11/23/4854939.aspx
第九章:C99可变长数组VLA详解/supermegaboy/archive/2009/11/23/4854921.aspx
第十章:动态数组/supermegaboy/archive/2009/11/23/4854899.aspx
前言
此文是笔者2005年所作《再再论指针》的修订版,与前文相比,本文主要的不同点有如下几点:
一、引用C/C++标准的条款去阐述原理。C与C++标准共有四个已发行的正式版本,分别是C89/C90、C99、C++98和C++2003,为了避免重复的条款引用,在文字或语义相同的情况下,笔者只引用C99的条款,遇到不同的情况时再分别引用。
二、加入了C++的内容。
三、增加或者合并了一些章节,同时修正了一些行文错误。
指针是C/C++的灵魂!它是C/C++众多引人入胜的特性中的一朵奇葩。与底层操作的亲密接触是指针与生俱来的优点,利用指针可以写出许多短小精悍、效率极高的代码。它是C/C++一把无可替代的利器,凭着这把利器,C/C++与其它高级语言相比至少在效率方面胜人一筹。
但是,由于数组与指针的原理与使用方式跟人们通常的思维习惯有较大差别,需要花较多的时间进行消化,这使得对数组与指针的偏见和误解成为了普遍存在的现象,更出现了避免使用指针的思潮,笔者认为这是非常不可取的。指针是如此犀利,正是它才使得C/C++语言威猛无比。如果就这样把它放弃了,那么C/C++就算是白学了。我们应当让指针成为你手中那把砍掉索伦手指上魔戒的举世无双的纳西尔圣剑,而不是你心中永远的魔戒。
与众多初学者一样,笔者对数组与指针的理解也经历了漫长的过程。初学C的时候,笔者作为谭书的受害者之一,与其它初学者一样脑袋中充满了对数组与指针各种各样的误解。后来随着对C/C++理解的深入,逐渐发现谭书中存在大量的谬误与漏洞,从此开始了纠偏的历程。这是一段痛并快乐着的过程,痛是由于愤恨被谋杀了一段宝贵的时光,快乐是因为重新找到了方向,相信不少朋友也曾有过跟笔者相似的体会。在这段时间里,笔者查阅了大量的资料,也耗费了大量的时间进行深刻的思考,还跟同事、朋友、网友进行了大量的辩论,特别是2005年,几乎整整一年的时间都是在激烈的辩论中渡过的,当年这些辩论的激烈程度到现在还记忆犹新,如果当时手里有把枪的话,我想我会开枪的!经过不断的思考、辩论、印证,再思考、再辩论、再印证,数组与指针的迷雾终于逐渐清晰了起来。
本文的目的,是希望通过跟各位朋友一起讨论关于数组与指针的几个关键概念及常见问题,加深对数组与指针的理解。笔者不敢奢望能够完全解开你心中的魔结,但如果通过阅读本文,能够让你在日后的数组与指针使用过程中减少失误,笔者就心满意足了。
当你阅读本文
您可能关注的文档
最近下载
- 2025届安徽省A10联盟高三上学期开学考-英语试题(含答案).docx VIP
- 周围神经损伤的护理.pptx VIP
- 设计院电气专业面试常见问题汇总与标准答案.pdf VIP
- 2021年福建省福州一中自主招生数学试卷.pdf VIP
- 化学-安徽省1号卷A10联盟2025届高三上学期8月开学摸底考试试题和答案.docx VIP
- 安徽省A10联盟2025届高三上学期8月开学摸底考试生物试卷(含答案).docx VIP
- 2025年营养与膳食.pptx VIP
- 安徽省A10联盟2025届高三上学期8月开学摸底考试地理试卷(含答案).pdf VIP
- 中国通史16.ppt VIP
- 车租赁代驾合同.doc VIP
文档评论(0)