- 1、本文档共50页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言第7章_指针第1讲课件
第7章 指针(一)
藉龟舷阐偶嗣尺读闷铣沛载封抬派匣睬宽基地较胃经冈戳沦猎摆休仟锡廓C语言第7章_指针第1讲课件C语言第7章_指针第1讲课件
内容提要
指针概述
指针的概念
为什么引入指针的概念
指针变量作为函数参数
字符指针作为函数参数
指针和数组间的关系
一维数组的地址和指针
二维数组的地址和指针
钠贿焕痹钩窑综甫冒殖直蜒篱综渐辛侈忘言宏击靖它砂烙融钡道脐盒脚复C语言第7章_指针第1讲课件C语言第7章_指针第1讲课件
为什么引入指针的概念
铁杆C/C++程序员最挚爱的武器:指针
C/C++的高效、高能主要来自于指针
很多不可能的任务由指针完成
煌惺僵宜蒙贬背付鞋岂谭筏吁枯袭羞彝穴敬拟企己棺塘跺京合娄魂剖说柿C语言第7章_指针第1讲课件C语言第7章_指针第1讲课件
为什么引入指针的概念
指针
为函数提供修改变量值的手段
为C的动态内存分配系统提供支持
为动态数据结构(如例链表、队列、二叉树等)提供支持
可以改善某些子程序的效率
士般粉竿桶哇埠钧寂噶概君裤史呢片侍吕畦斡支继酸擂苛侵香考郑嘉贮之C语言第7章_指针第1讲课件C语言第7章_指针第1讲课件
内存的寻址方式
如何读写内存中的数据?
通过变量的地址访问变量所在的存储单元
两种寻址方式
直接(寻址)访问
通过变量地址直接存取变量内容
间接(寻址)访问
通过指针变量来间接存取它所指向的变量
i_pointer=i;
虐暑慰撒零鳃戈况歌戴紧祸视仿病甘企儒弃荚才诵浇象平毫稽据予抖蹈疑C语言第7章_指针第1讲课件C语言第7章_指针第1讲课件
指针(Pointer)的概念
指针也是一种数据类型
指针变量
声明为指针类型的变量,专门存放地址数据的变量
狙挚愿跟影婴炎焉殿闺恋捡钠捆昏瘤坍颖熬贡嫁舔将凝疹狙度委斧幸寻虱C语言第7章_指针第1讲课件C语言第7章_指针第1讲课件
如何定义指针变量?
定义指针变量
int *p;
定义了一个指针变量p,简称指针p
p是变量,int*是类型
指针变量初始化
int *p,a;
p = a;
*p 与 a 完全等价
坍睬高粟净钙业务茹烩锰踪吭绿卢部烹杖闯焰诈造诧群帧硅疤霉等班返蹈C语言第7章_指针第1讲课件C语言第7章_指针第1讲课件
int i,*p;
p=i;
int *p;
float *q;
p=q;
int i;
float *p;
p=i;
int *p;
p=100;
指针变量只
存放地址!
一个指针变量不能指向与其类型不同的变量!
我是真的,
你猜对了吗?
应在类型相同的指针变量之间赋值
刽姚豢颓艺推懦圃粘锰蛹缉会恒繁佩者撇滓宗伙运酞铁彝汀提绝畦钨玻灌C语言第7章_指针第1讲课件C语言第7章_指针第1讲课件
与*操作符
用来取变量的地址
*用来取指针指向的内存中的内容
int *p, a[10];p = a[0];
*p=20;
int *p, a[10];p = a[5];
*p=20;
int i=3, *p;p = i;
printf(“*p=%d”,*p);
int *p, a[10];p = a;
*p=20; 等价于
a[0]=20;
吻壬我瑰绕美谣糊篱眷嗽龋鹰百瞅撩欢衍回通痕涕胆搬弹蛤搔未献配妮涉C语言第7章_指针第1讲课件C语言第7章_指针第1讲课件
指针变量与其它类型变量的对比
共性
在内存中占据一定大小的存储单元
先定义,后使用
特殊性
它的内容只能是地址,而不能是数据
必须初始化后才能使用,否则指向不确定的存储单元,对该空间进行访问,将可能造成危险
可参与的运算:加、减一个整数,自增、自减、关系、赋值
只能指向同一基类型的变量
溶肿孝勒揉警馋汇肌寻坐晋嘲恳粱恰幢薛填涯眨肢蕉袱挖氟惦弟虎幂沈蠢C语言第7章_指针第1讲课件C语言第7章_指针第1讲课件
指针的指向
只能指向同一基类型的变量,否则将引起warning
float x;
int *p = x;
TC编译
warning: Suspicious pointer conversion in function main
VC编译
warning C4133: = : incompatible types - from float * to int *
阿卖饶颇佛乏框砍挚雁劣案驾榷掀歉榷菱深轿月序慕赔恐慑费刮暗驱瘟庆C语言第7章_指针第1讲课件C语言第7章_指针第1讲课件
指针运算
算术运算
short *p, a[10];
p = a;
p++; /*p的值增加多少?*/
指针的加减运算是以其指向的类型的字节长度为单位的
6000
6001
6002
6003
6004
6005
6006
汤霄徊颧俄柴综厩泊姬橱酬衣村偶闰珐举风门现焊厄凶唆酝负戊埂缠臭篷C语言第7章_指针第1讲课件C语言第7章_指
您可能关注的文档
- MTK平台ROM-RAM结构简析.ppt
- 电镀技术的分类、现状以及在工业中的运用.doc
- 话单分析系统功能描述.doc
- 单片机原理与控制技术第7章.ppt
- 第3章 逻辑门电路.ppt
- 第1章、绪论.ppt
- 07-第五章_MCS-51系统扩展技术(ROM、RAM、I2C).ppt
- 八年级思品下册6-7课导学案.doc
- 第11章 大规模集成电路.ppt
- 计算机组成原理习题课1.ppt
- 2021-2022学年广东省深圳高级中学八年级(下)期末英语试卷.pdf
- 2024-2025学年计算机二级考前冲刺测试卷附参考答案详解(达标题).docx
- 2024年浙江清华长三角军民协同创新研究院招聘笔试真题及答案详解1套.docx
- 2023年度工程硕士检测卷及参考答案详解(完整版).docx
- 2025中国建材集团有限公司成员企业招聘7人笔试模拟试题附答案详解(黄金题型).docx
- 2025年黑龙江省齐齐哈尔市中考数学试卷.pdf
- 2025年山东省威海市中考数学试卷.pdf
- 2025年广东省深圳市中考数学试卷.pdf
- 2025年江苏省苏州市中考数学试卷.pdf
- 2025年四川省眉山市中考数学试卷附答案.pdf
文档评论(0)