网站大量收购闲置独家精品文档,联系QQ:2885784924

第八单元 指针.pptx

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八单元 指针

PPT模板下载:/moban/ 行业PPT模板:/hangye/ 节日PPT模板:/jieri/ PPT素材下载:/sucai/ PPT背景图片:/beijing/ PPT图表下载:/tubiao/ 优秀PPT下载:/xiazai/ PPT教程: /powerpoint/ Word教程: /word/ Excel教程:/excel/ 资料下载:/ziliao/ PPT课件下载:/kejian/ 范文下载:/fanwen/ 试卷下载:/shiti/ 教案下载:/jiaoan/ C语言程序设计任务驱动式教程 第八单元 指针 问题引入 在程序中引用变量名来使用这个内存空间,而编译时计算机则使用内存的地址来引用它。如果我们定义了一个整型变量int sum=0;那么内存就开辟了一个整型变量的空间存放sum的值。 那么每一个变量都有一个对应的内存地址,我们还可以定义一个存放内存地址的变量就是指针,存储在指针中的地址是另一个变量的首地址。我们可以定义指针变量p,存放变量sum 的首地址,变量sum是一个值为0的整型变量。存储在p中的地址是sum 的第一个字节的地址。 指针是C语言中最强大的工具之一,是精华所在,也是最容易让人困惑的主题。只有在正确理解指针概念的基础上,才能对其操作灵活的运用。 第二单元 语言程序设计基础 任务1:交换两个变量的值 任务2:三个数排序 任务3:实现放大镜 单元任务 单元小结 拓展提高 任务1:交换两个变量的值——指针概述 特别提示 工作任务 思路指导 相关知识 任务实施 工作任务 通过编程解决两个变量数据交换的问题,我们使用指针变量指向两个整型变量,并且完成交换。 通过编程解决两个变量数据交换的问题,我们使用指针变量指向两个整型变量,并且完成交换。 思路指导 定义变量:定义两个整型变量int a,b 定义指针:定义两个指针变量int *p1,*p2 输入:a,b的值 交换:将两个指针指向两个整型变量,运用指针完成a与b值的交换。 相关知识 (二)指针变量赋值 1. 通过取地址运算符()获得地址值 单目运算符()用来求出运算对象的地址,利用它可以把一个变量的地址赋给指针变量。 举例: int a=5, *p, *q; p=a; scanf((“%d”,a);和scanf(“%d”,p)是等价的。 相关知识 2. 通过指针变量获得地址值 可以通过赋值运算,把一个指针变量中的地址值赋给另一个指针变量,从而使这两个指针变量指向同一地址。例如,若有上面的定义,则语句: q=p;使指针变量q中也存放了变量a的地址,也就是说指针变量p和q都指向了整型变量a。 注意:赋值号两边指针变量的基类型必须相同。 3. 给指针变量赋“空”值: p=NULL; NULL是在stdio.h头文件中定义的预定义符,因此在使用NULL时,应该在程序的前面出现预定义行: # include “stdio.h”。 任务实施 # include stdio.h main( ) {int a, b, *p1, *p2,p; printf(请输入a和b:\n); scanf(%d,%d, a, b); p1=a; p2=b; if (ab) //用指针交换a,b {p=*p1; *p1=*p2;* p2=p;} printf (\na=%d,b=%d\n, a, b); printf (指针1max=%d, 指针2min=%d\n, *p1, *p2); } 特别提示 (1)C语言变量先定义后使用,指针变量也不例外,为了表示指针变量是存放地址的特殊变量,定义变量时在变量名前加“*”号。 (2)指针变量的基类型(简称:指针变量类型):指针变量所指向数据的类型。我们知道,整型数据占用2个字节,浮点数据占用4个字节,字符数据占用1个字节。指针变量类型使得指针变量的某些操作具有特殊的含义。比如,pt1++;不是将地址值增1,而是表示将地址值+2(指向后面一个整数)。 (3)指针变量的基类型:实际上是指针变量所指向空间存储的数据的类型。 (4)本程序中定义语句中的*p1和*p2功能是定义两个指针变量,而交换和输出语句中出现的*p1和*p2功能是

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档