C语言程序设计实用教程 周虹 课件 第9章 指针新.pptVIP

C语言程序设计实用教程 周虹 课件 第9章 指针新.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
佳木斯大学 C语言程序设计实用教程 第9章 指 针 本章学习目标 掌握指针与指针变量的概念,熟练使用指针与地址运算符 掌握变量、数组、字符串、函数、结构体的指针以及指向变量、数组、字符串、函数、结构体的指针变量。通过指针引用以上各类型数据 掌握用指针作函数参数 掌握返回指针值的指针函数 掌握指针数组,指向指针的指针,main函数的命令行参数 【教学目的】 1、掌握直接访问和间接访问、指针的概念 2、掌握指针变量的概念,熟练使用指针与地址运算符 3、掌握指向变量指针的定义和使用 【主要内容】 1、相 关 概 念 2、指针变量的定义和使用 3、指针变量作函数参数 【重点与难点】 1、间接访问的概念、指针变量作函数参数是难点 2、指针的概念、指针变量的定义和使用和指针变量作函数参数是重点 【教学方法】 采用理论讲解、形象教学方法 【教学内容】 带着问题学习: 1)什么是直接访问和间接访问 2)指向变量的指针如何定义?指针有哪些运算? 3)指针变量作函数参数时如何进行参数传递? 指针 指针是C语言中的一个重要的概念,也是C语言的一个重要特色。正确而灵活地运用它,可以有效地表示复杂的数据结构,能动态分配内存,能方便地使用字符串,有效而方便地使用数组,在调用函数时能得到多于一个的值,能直接处理内存地址等,这对设计系统软件是很必要的。 9.1 相 关 概 念 9.1.1 变量的地址 如果在程序中定义了一个变量,在编译时就给这个变量分配内存单元。系统根据程序中定义的变量类型,分配一定长度的空间。 9.1 相 关 概 念 如图9-1所示。假设程序中已定义了3个整型变量i、j、k,编译时内存用户数据区系统分配2000和2001两个字节给变量i,2002和2003字节给变量j,2004和2005给变量k。 如果执行赋值语句i=3;j=6;k=9;则3、6、9分别是i、j、k的值,而2000、2002 、2004分别是i、j、k的地址。 9.1 相 关 概 念 直接访问--按名存取 一般程序中通过变量名对内存数据进行存取操作,实质上是程序经编译后将变量名转变为内存地址. 9.1 相 关 概 念 9.1 相 关 概 念 9.1.3 指针和指针变量 一个变量的地址称为该变量的指针。例如,地址2000是变量i的指针。如果有一个变量专门用来存放另一变量的地址(即指针),则其称为指针变量。上述的i_pointer就是一个指针变量。注意区分指针和指针变量这两个概念。例如,可以说变量i的指针是2000,而不能说i的指针变量是2000。 9.2 指针变量的定义和使用 变量的指针就是变量的地址。存放变量地址的变量是指针变量,用来指向另一个变量。 为了表示指针变量和它所指向的变量之间的联系,在程序中用“*”符号表示“指向”, 9.2 指针变量的定义和使用 9-2-1 指针变量的定义 定义指针变量的一般形式为: 基类型 *指针变量名 下面都是合法的定义: float *pointer_3; (pointer_3是指向实型变量的指针变量) char *pointer_4; (pointer_4是指向字符型变量的指针变量) 9-2 变量的指针和指向变量的指针变量 9-2-1 指针变量的定义 (1)指针变量前面的“*”,表示该变量的类型为指针型变量。注意:指针变量名是pointer_l、pointer_2,而不是*pointer_l、*pointer_2。 (2)在定义指针变量时必须指定基类型。指针变量所指向的变量的类型,即基类型。一个指针变量只能指向同一个类型的变量。 9.2 指针变量的定义和使用 9.2.2 指针变量的初始化和赋值 指针变量在定义的同时也可以初始化。 在C语言中,变量的地址是由编译系统分配的,对用户完全透明,用户不知道变量的具体地址。变量地址可以通过取地址运算符“”来获得。运算对象是变量或数组元素,运算结果是对应变量或数组元素的地址。例如: int k=1;*p=k; 它有两个含义,一是定义指针变量p,二是给指针变量p赋初值取k的地址,相当于 int *p;p=k; 9.2 指针变量的定义和使用 一个指针变量可以通过不同的方式获得一个确定的地址值,从而指向一个具体的对象。 1.通过求地址运算符()获得地址值 例如:定义:int k=1, *q; 则赋值语句:q=k;把变量k的地址赋给q,这时可以说q指向变量k 9.2 指针变量的定义和使用 2.通过指针变量获得地址值 通过赋值运算把一个指针变量的值赋给另一个指针变量,使这两个指针指向同一地址。 例如:有定义:int k,*p=k, *q; 则语句q=p;使指针变量q

您可能关注的文档

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档