- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
1-*1-*指针与动态内存分配
课程内容安排指针概述指针的运算指针与数组指针与函数指针与字符串二级指针动态内存分配小结习题内存单元:在计算机中,所有的数据都是存放在存储器中的。一般把存储器中的一个字节称为一个内存单元,不同的数据类型所占用的内存单元数不等,如整型量占2个单元,字符量占1个单元等。简单来说,指针是一个地址,其指向存储某一个数据的存储地址。对于指针我们可以这样理解,比如一个人要到某地去,但不认识路,于是去问交警。然后交警把该地方的地址写在了一张纸上,并且给了该问路人。那么交警写的地址就是指针,指向要去的地址,而那张纸就是指针变量,用于存储指针。为了正确地访问内存单元,必须为每个内存单元编上号。根据一个内存单元的编号即可准确地找到该内存单元。内存单元的编号也叫做地址。指针变量是一种特殊性质的变量。指针变量是存放另一个变量的地址的变量。它和普通变量一样占用一定的存储空间。它与普通变量不同之处:指针的存储空间里存放的不是普通的数据,而是一个地址。123451指针概述指针是一个变量,在程序中使用时,必须先声明,后使用。在指针声明的同时也可以进行初始化。指针的定义指出了指针的存储类型和数据类型,定义的语法形式如下:存储类型名数据类型*指针变量名例如:int*px;char*name;staticint*pa;定义了一个指针后,在使用此指针前,必须首先给它赋一个合法的值。否则,程序中对指针的使用就有可能导致系统崩溃。可以在定义指针的同时通过初始化来给指针赋值,也可以在使用之前给指针赋值。指针初始化的一般形式如下:存储类型数据类型*指针名=初始地址值;1234562定义指针3指针的运算两个有关的运算符:(1):取地址运算符(2)*:指针运算符(或称“间接访问”运算符)例如,a为变量a的地址,*p为指针变量p所指向的变量.使用*p与定义*p不同,定义时,int*p中的“*”不是运算符,而在程序执行语句中,引用“*p”,其中的“*”是一个指针运算符指针运算是以指针变量所持有的地址值为运算量进行的运算。因此,指针运算的实质是地址的计算。由于指针是持有地址量的变量这一特性,指针的运算与普通变量的运算在种类上和意义上都是不同的。指针运算的种类是有限的,它只能进行取地址和取值运算、算术运算、关系运算和赋值运算。如果说明了一个指针,并使其值为某个变量的地址,则可以通过这个指针间接地访问在这个地址中存储的值。4常指针与指针常量修饰词constconst是C语言的一种关键字,起受保护,防止以外的变动的作用!可以修饰变量,参数,返回值,甚至函数体。const修饰变量,表示该变量不能被修改。
???1、constchar?*p表示?指向的内容不能改变,叫常量指针。
???2、char*constp,就是将p声明为指针常量,它的地址不能改变,是固定的,但是它的内容可以改变。
???3、若const指针是前两种的结合,使得指向的内容和地址都不能发生变化.
?????????constdoublepi=3.14159;
?????????constdouble*constpi_ptr=pi;教材54到55页当指针变量pp所指的变量ip又是一个指针时,pp是一种指向指针的指针,此时称指针变量pp是一种多级指针。定义指向指针变量的指针变量的一般形式为:类型说明符**变量名;该一般形式说明以下几个方面的内容:首先定义变量为指针变量,其次是该变量能指向一种指针对象,最后是被指向的指针对象能指向的对象的类型。例如int**pp,*ip,i;ip=i;pp=ip;定义说明pp是指向指针的指针变量;它能指向的是这样一种指针对象,该指针对象是能指向int型的指针变量。如上述代码让pp指向指针变量ip,ip指向整型变量i。5多级指针指针的算术运算是按C语言地址计算规则进行的,这种运算与指针指向的数据类型有密切关系,也就是C语言的地址计算与地址中存放的数据长度有关。设px和py是指向具有相同数据类型的一组若干数据的指针,n是整数,则指针可以进行的算术运算有如下几种:px+n,px-n,px++,++px,px――,――px,px-py1236指针的算术运算设指针p和q是指向同一组数据类型一致的数据,则p-q运算的结果值是两指针指向的地址位置之间的数据个数。指针相减:指针与整数运算指针作为地址量加上或减去一个整数n,其意义是指针当前指向位置的前
您可能关注的文档
- 执行力与团队建设课件.ppt
- 物理楞次定律.ppt
- 意外事故的表现及急救处理.ppt
- 有机知识网络整理、有机反应.ppt
- 指标获利模型背离王.ppt
- 教辅图书的渠道分析.ppt
- 有限区间和无限区间.ppt
- 物体打击事故案例分析.ppt
- 成本理论西方经济学.ppt
- 无土栽培的环境调节控制设施.ppt
- 门诊护理查对制度.pptx
- DB5303T 28-2025 臭参种植技术规程.docx
- DB41T 2790-2024 “美豫名品”公共品牌认证通则.docx
- DB5107T 155-2025 魔芋露天栽培技术规程.docx
- TESL 34005-2024 黄鳝配合饲料.docx
- DB5107T 147-2025 天麻仿野生栽培技术规程.docx
- DB5113T 50-2025 青花椒生产技术规程.docx
- TDSAT 0001-2025 蔬菜中含氰基拟除虫菊酯类农药残留的快速检测.docx
- TGAIA 026-2024 水产品中河豚毒素的快速检测胶体金免疫层析法.pdf
- DB41T 2797-2024 双边箱钢-混组合梁桥工业化设计建造技术规程.pdf
文档评论(0)