C语言程序设计 第7章 指针ppt课件.ppt

C语言程序设计 第7章 指针ppt课件.ppt

ID:59421648

大小:753.00 KB

页数:74页

时间:2020-09-19

C语言程序设计 第7章 指针ppt课件.ppt_第1页
C语言程序设计 第7章 指针ppt课件.ppt_第2页
C语言程序设计 第7章 指针ppt课件.ppt_第3页
C语言程序设计 第7章 指针ppt课件.ppt_第4页
C语言程序设计 第7章 指针ppt课件.ppt_第5页
资源描述:

《C语言程序设计 第7章 指针ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1.深刻理解并掌握指针的概念。2.掌握指针变量的定义和应用,指针变量作为函数参数的用法。3.掌握指向数组的指针与指向数组的指针变量的概念、定义和应用。4.掌握指向字符串的指针的定义和应用。5.理解指向函数的指针的定义和用法。6.了解返回指针值的函数的定义和应用,了解它与指向函数的指针变量的区别。7.了解指针数组的定义和应用,掌握指针的指针的定义和应用,了解它指针数组与指向数组的指针变量的区别。教学要求第7章指针7.2指针的定义、使用和运算7.1地址和指针的概念第7章指针7.4数组和指针1.一维数

2、组和指针2.多维数组和指针3.用指针处理字符串1.指针的定义2.指针的操作3.针变量的初始化7.3函数与指针1.指针作为函数参数2.返回指针的函数4.函数体内的指针4.指针数组7.7小结结束3.函数指针7.6指针实例7.5动态存储管理1.存储管理函数2.函数的使用教学内容7.1地址和指针的概念7.1地址和指针的概念(P136)变量与地址内存地址计算机内存的组织方式是把所有单元顺序排列,每个单元(字节)有一个顺序编号,称单元的地址或称为指针。数据的存取是在内存地址所标识的存储单元中进行的。内存单元的地

3、址与内存单元中的数据是两个完全不同的概念。变量地址系统分配给变量所需的内存单元的起始地址。7.1地址和指针的概念变量是对程序中数据存储空间的抽象变量建立后,意味着为其指定了一个存储位置,分配了存储变量值所需要的存储单元。变量值的存取通过变量在内存中的地址进行任何变量在其存在期间总有一个确定的、固定的存储位置,即固定的地址。变量地址可作为数据来操作。地址0……200020012002200320042005内存…………程序中:inti;floatk;编译或函数调用时为其分配内存单元ik内存中每个字

4、节有一个编号--地址7.1地址和指针的概念指针与指针变量指针一个变量的地址指针变量专门存放变量地址的变量……200020012002200320042005内存…………整型变量i10变量i的地址变量i的内容指针变量p2000变量p的内容指针变量7.1地址和指针的概念变量值的存取直接存取一般情况下,在程序中对变量进行存取操作,实际上就是对某个地址的存储单元进行操作,只不过变量和具体地址的联系由编译系统完成,用户无须知道变量在内存中的具体地址,这种直接按变量地址存取变量值的方式称“直接存取”。例s

5、canf("%d",&i)的执行过程是这样的:找到变量i的起始地址2000;然后将键盘输入的值10送到内存单元2000和2001中。例printf("%d",i)的执行过程与scanf()很相似:首先找到变量i的起始地址2000,然后从2000和2001中取出其值,最后将它输出。7.1地址和指针的概念间接存取指针变量也是变量,也有自己的存储地址,设指针变量p的存储单元中放的是变量i的地址,这时要访问i,可以先找到变量p的地址,从中取出i的地址,再去访问i的内容,这种通过变量p间接得到变量i的地址,

6、然后再存取i的值的方式称“间接存取”。指针机制是一种间接访问其他对象的手段,目的是为了更加灵活方便地对数据进行操作。指针变量p:变量i:变量i的地址(指针)变量i的值指向地址存入指针变量7.1地址和指针的概念说明指针变量的赋值操作有特殊的意义,由于指针变量的值只能是其他对象的地址,指针变量赋值就是把某个变量的地址赋给指针(这个过程称指针指向变量),因此,在程序运行的不同时刻,指针可以指向不同的变量。指针的应用使程序代码更简洁、更高效。但使用指针会降低程序的可读性,使用不当,可能造成严重的错误甚至引

7、起系统崩溃。C语言编译器对指针的检查较弱,查错比较困难,要求程序员控制指针的有效性。从程序设计角度讲,更应该注意用普通变量无法实现只有用指针才能实现的功能和机制,如改变调用函数环境的值等。7.2.1指针的定义7.27.2指针的定义、使用和运算指针的定义一般形式定义指针变量的一般形式类型名*指针变量1,*指针变量2,…;说明指针变量的值为某个内存单元的地址值(地址编号)。值的类型均为整型。通过指针访问的对象有类型C语言规定,任何一个指针变量,只能指向具有某种特定类型的变量。定义中的类型名限定了指针变

8、量可以关联的对象的范围。指针变量也是变量像普通变量一样可以赋值、取值等。但要满足类型约束。例如:int*p1;定义指向整型变量的指针变量p1,也叫整型指针。float*p2;定义指向浮点型变量的指针变量p2,也叫浮点指针。char*s;定义指向字符的指针变量s,也叫字符指针。int*p,n;a[10];指针变量可和其他变量一起定义注意:‘*’不可省略,否则变成普通变量的定义注意:1.int*p1,*p2;与int*p1,p2;2.指针变量

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。