《C语言讲稿》课程教学资源(PPT课件)第七章 地址和指针

第7章地址和指针 7.1址和指针的概念 72指变量的定义和指变量的基类型 7.3给指变量值 7.4劝指针变量的续作 7.5指针在函数方面的应用 点专此处结束放殃 4合
第7章 地址和指针 7.1 地址和指针的概念 7.2 指针变量的定义和指针变量的基类型 7.3 给指针变量赋值 7.4 对指针变量的操作 7.5 指针在函数方面的应用

71地址和指针的概念 7.1.1地址和指针的概念 1.“地址”的概念 〓2.存储单元“地址”的表示 三3.“指针”的概念 点专此处结束放殃 4合
7.1 地址和指针的概念 7.1.1 地址和指针的概念 1. “地址”的概念 2.存储单元“地址”的表示 3. “指针”的概念

凹7.1.2为什么使用指针 使用指针,实现了“间接访问”变量, 这只是一个过程,其实质是可以达到方便 地引用数组,提高计算机的运行效率,调 用函数时可以修改或返回多个参数值,还 可以描述更复杂的数据结构,….为了加 深读者对指针重要性的理解,下面我们举 函数调用的实例。 点专此处结束放殃 4合
7.1.2 为什么使用指针 使用指针,实现了“间接访问”变量, 这只是一个过程,其实质是可以达到方便 地引用数组,提高计算机的运行效率,调 用函数时可以修改或返回多个参数值,还 可以描述更复杂的数据结构,……为了加 深读者对指针重要性的理解,下面我们举 一函数调用的实例

例7.1欲想调用f函数,计算出两个 数相加和相减的值,然后在main函数中显 示结果 程序如下 fun(int x, int y fint add=0, sub=0; add=x+ sub=x-y; 点专此处结束放殃 4合
例7.1 欲想调用fun函数,计算出两个 数相加和相减的值,然后在main函数中显 示结果。 程序如下: fun ( int x , int y ) { int add=0 , sub=0 ; add=x+y ; sub=x–y ; }

main( fint a, b, add=0, sub=0 scanf(od od &a, &b); printf (a=%d, b=%d n",a, b); fun(a, b)i printf (9d+ %d=%d n",a, b, add); printf (%od-%d=%d In,a, b, sub); 点专此处结束放殃 4合
main ( ) { int a , b , add=0 , sub=0 ; scanf ( " %d %d " , &a , &b ) ; printf ( " a=%d , b=%d \n " , a , b ) ; fun ( a , b ) ; printf ( " %d + %d =%d \n " , a , b , add ) ; printf ( " %d – %d =%d \n " , a , b , sub ) ; }

假设程序运行时给变量a输入8,给变 量b输入5,程序运行结果: a=8,b=5 8+5=0 8-5=0 点专此处结束放殃 4合
假设程序运行时给变量a输入8,给变 量b输入5,程序运行结果: a=8 , b=5 8 + 5=0 8 – 5=0

程序运行结果与我们“想象”的不 致,为什么呢?其原因是fun函数中变量 add和sub与main函数中变量add和sub各自 占用自己的存储单元,因此fun函数中变量 ad存放的两个数的求和值无法传回到 main函数的变量add中,同理,fun函数中 变量sub存放的两个数的相减值也无法传回 到main函数的变量中。下面我们修改一下 源程序,借助指针,将fn函数中运行的结 果传回到main函数中。 点专此处结束放殃 4合
程序运行结果与我们“想象”的不一 致,为什么呢?其原因是fun 函数中变量 add和sub与main函数中变量add和sub各自 占用自己的存储单元,因此fun函数中变量 add存放的两个数的求和值无法传回到 main函数的变量add中,同理,fun函数中 变量sub存放的两个数的相减值也无法传回 到main函数的变量中。下面我们修改一下 源程序,借助指针,将fun函数中运行的结 果传回到main函数中

72指针变量的定义和指 针变量的基类型 72.1指针变量的定义和指针 交量的基类型 定义指针变量的一般形式如下: 类型名指针变量名1,*指针变量名 ●●●●●● 点专此处结束放殃 4合
7.2 指针变量的定义和指 针变量的基类型 7.2.1 指针变量的定义和指针 变量的基类型 定义指针变量的一般形式如下: 类型名 *指针变量名1, *指针变量名 2,……;

例如:int*pi,*pi 以上定义语句中,p和p都是用户标 识符,表示具体的变量名,现在每个变量 名前加一星号“”说明符,用来说明所定 义的变量是指针变量。 注意:变量名前的星号“”不可省略, 若省略了星号“兴”说明符,就变成了普通 整型变量。 点专此处结束放殃 4合
例如:int *pi , *pj ; 以上定义语句中,pi和pj都是用户标 识符,表示具体的变量名,现在每个变量 名前加一星号“*”说明符,用来说明所定 义的变量是指针变量。 注意:变量名前的星号“*”不可省略, 若省略了星号“*”说明符,就变成了普通 整型变量

in是数据类型名,在这里,说明了pi 和是两个指向整型(in类型)变量的指 针,也就是说变量p和p中只能存放int类 型变量的地址,这时我们称int是指针变量 p和p的基类型。又如 double *pd i char“sl,s2; 点专此处结束放殃 4合
int是数据类型名,在这里,说明了pi 和pj是两个指向整型(int类型)变量的指 针,也就是说变量pi和pj中只能存放int类 型变量的地址,这时我们称int是指针变量 pi和pj的基类型。又如: double *pd ; char *s1 , *s2 ;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C语言讲稿》课程教学资源(PPT课件)第六章 自定义函数的设计和使用.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第五章 循环结构的程序设计.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第四章 分支结构的程序设计.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第三章 顺序结构的程序设计.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第二章 C语言程序设计的基 础知识.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第一章 算法与程序设计.ppt
- 《软件工程》课程电子教案(PPT教学课件)第五章 人机界面设计.ppt
- 《软件工程》课程电子教案(PPT教学课件)第四章 软件设计(4.6)面向对象方法.ppt
- 《软件工程》课程电子教案(PPT教学课件)第四章 软件设计(4.4-4.5)概要设计、详细设计.ppt
- 《软件工程》课程电子教案(PPT教学课件)第四章 软件设计(4.1-4.3).ppt
- 《软件工程》课程电子教案(PPT教学课件)第三章 软件需求分析(3.5)分析建摸方法.ppt
- 《软件工程》课程电子教案(PPT教学课件)第三章 软件需求分析(3.3-3.4)需求建模、分析建摸方法.ppt
- 《软件工程》课程电子教案(PPT教学课件)第三章 软件需求分析(3.1-3.3).ppt
- 《软件工程》课程电子教案(PPT教学课件)第一章 软件工程概述 §1.2 软件生存周期 Software Life Cycle.ppt
- 《软件工程》课程电子教案(PPT教学课件)第六-九章 测试测试自动化.ppt
- 《软件工程》课程电子教案(PPT教学课件)第六章 软件测试.ppt
- 《软件工程》课程电子教案(PPT教学课件)第六章 软件测试.ppt
- 《软件工程》课程电子教案(PPT教学课件)第一章 软件工程概述(授课教师:王燕兴、计晓云)§1.1 软件工程的背景和历史.ppt
- 《微机接口技术》 第十二章 串行通信接口.ppt
- 《微机接口技术》 第一章 微机系统与接口技术概述.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第八章 一维数组的应用.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第九章 二维数组的应用.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第十章 字符串处理.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第十一章 用户标识符的作用域和存储类别.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第十二章 编译预处理.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第十三章 结构体的应用.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第十四章 数据文件的应用.ppt
- 《C语言讲稿》课程教学资源(PPT课件)第十五章 实训.ppt
- 《Matlab系统分析与程序设计》课程教学资源(PPT课件讲稿)第一章 MATLAB概述.ppt
- 《Matlab系统分析与程序设计》课程教学资源(PPT课件讲稿)第二章 MATLAB数据.ppt
- 《Matlab系统分析与程序设计》课程教学资源(PPT课件讲稿)第三章 MATLAB程序设计.ppt
- 《Matlab系统分析与程序设计》课程教学资源(PPT课件讲稿)第四章 MATLAB绘图.ppt
- 《Matlab系统分析与程序设计》课程教学资源(PPT课件讲稿)第五章 MATLAB数值计算.ppt
- 《Matlab系统分析与程序设计》课程教学资源(PPT课件讲稿)第六章 MATLAB符号计算.ppt
- 《Matlab系统分析与程序设计》课程教学资源(PPT课件讲稿)第七章 MATLAB图形用户界面设计.ppt
- 《Matlab系统分析与程序设计》课程教学资源(PPT课件讲稿)第八章 MATLAB笔记本.ppt
- 《Matlab系统分析与程序设计》课程教学资源(PPT课件讲稿)第九章 MATLAB环境下的仿真.ppt
- 《计算机汇编语言》课程教学资源(教案讲义)第一章 汇编语言基础知识.doc
- 《计算机汇编语言》课程教学资源(教案讲义)第十章 汇编语言程序设计实例.doc
- 《计算机汇编语言》课程教学资源(教案讲义)第二章 微型计算机结构.doc