C语言上课PPT第八章.pptVIP

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言上课PPT第八章

第八章 指 针 教学要求:通过本章的教学,学习者应该深刻理解指针的概念及其内涵,掌握指针变量的定义和使用方法。能合理利用指针变量编制功能函数,解决简单的实际问题;理解指针变量与一维数组的关系,能熟练运用指向一维数组的指针变量操纵数组元素;同时,能正确利用字符串指针处理字符串的相关问题。 教学提示:指针是C语言的精髓,不能熟练地使用指针,就相当于没学到C语言的精华。指针是一种数据类型,指针类型的变量被初始化后,就存储了地址值。利用指针变量可方便地操作数组和字符串。 第八章 指 针 教学内容:本章首先介绍了C语言指针的概念,接着给出了C语言中指针变量的定义方式,以及指针变量的使用方式。在大致建立了指针的概念后,本章还介绍了指向一维数组的指针变量和指向字符串的指针变量的简单用法,为后续学习结构体与共用体的知识,奠定了基础。 第八章 指 针 第一节 指针的概念 变量存储的相关概念 内存地址 计算机硬件系统的内存储器中,拥有大量的存储单元,一般把存储器中的一个字节称为一个内存单元, 不同的数据类型的变量所占用的内存单元数不等,为了正确地访问这些内存单元, 必须为每个内存单元编上号。 根据一个内存单元的编号即可准确地找到该内存单元。内存单元的编号也叫做“内存地址”,每个存储单元都有一个唯一的地址。 请务必注意:内存单元的地址与内存单元中的数据是两个完全不同的概念 第八章 指 针 变量名、变量地址和变量值 “变量名”是给内存空间取的一个容易记忆的名称;“变量地址”是系统分配给变量的内存单元的起始地址;“变量值”是变量的地址所对应的内存单元中所存放的数值,或内容 假如有一幢教师办公楼,各房间都有一个编号,如,1001,1002,1003,…。一旦各房间被分配给相应的系部部门后,各房间就挂起了部门名称牌,如:计算机系、电子工程系、工商管理系、通信工程系等。假设计算机系被分配在1001房间,若要找计算机系的教师(即值或内容),可以去找计算机系(按名称找),也可去找1001房间(按地址找) 第八章 指 针 凡在程序中定义的变量,当程序编译时,系统都会给它们分配相应的存储单元 例如: int a=7,b=8; float c=2.7; 要访问内存中的变量,在程序中是通过变量名来引用变量的值的。例如printf(“%d”,a)。实际上,在编译时将每一个变量名对应一个地址,在内存中不再出现变量名而只有地址,程序中若引用变量a,系统便会找到其对应的地址2000,然后从2000和2001这两个字节中取出其中的值。 又如scanf(%d,b),其中的b指的是变量b的地址(是地址运算符)。执行scanf函数时,将从键盘输入一个整数值送到b(即地址2002)所标示的存储单元中。 第八章 指 针 变量的访问方式 直接访问 由以上分析可以知道,要访问变量,必须通过地址找到该变量的存储单元。由于通过地址可以找到变量单元,因此可以说一个地址“指向”一个变量存储单元。譬如,地址2000指向变量a,2002指向变量b等。这种通过变量名或地址访问一个变量的方式称为“直接访问”。 用变量名对变量的访问也属于“直接访问”,因为在编译后,变量名和变量地址之间建立了对应关系,对变量名的访问,系统会自动转换成利用地址对变量的访问。 第八章 指 针 间接访问 还有一种“间接访问”方式,就是把一个变量的地址放在另一个变量中,利用这个“特殊”的变量进行访问。 “特殊”变量p存放的内容是变量d的地址,利用变量p来访问变量d的方法称为“间接访问”。 存放地址的变量是一种特殊的变量,它只能用来存放地址,而不能用来存放其它类型(如整型、实型、字符型)的数据,需要专门加以定义。 第八章 指 针 两种访问方式的比较 假设为了开一个A抽屉,有两种办法,一种是将A钥匙带在身上,需要时直接找出该A钥匙打开抽屉,取出所需的东西,这相当于直接访问。另一种办法是:为安全起见,将该A钥匙放到另一抽屉B中锁起来。如果需要打开A抽屉,就需要先找出B钥匙,打开B抽屉,取出A钥匙,再打开A抽屉,取出A抽屉中之物 ,这就是“间接访问”。 第八章 指 针 第二节 指向变量的指针变量 指针变量和普通变量一样占用一定的存储空间,但指针变量存储空间中存放的不是普通的数据,而是一个地址。指针变量是一个地址变量 一、指针变量的定义及初始化 1.指针变量的定义 C语言规定所有变量在使用前必须定义,指定其类型,系统按数据类型分配内存单元。指针变量不同于整型变量和其他类型的变量,它是专门存放地址的。必须将它定义为“指针类型”。 格式:基类型 *指针变量名 “基类型”是该指针变量所指向的变量的类型,也就是指针变量所存储变量地址的那个变量的类型 第八

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档