第8讲 数组函数和变量类型.ppt

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

计算机与信息工程分院 第8讲 函数(2) ----数组函数和变量类型 主要内容 1.数组作为函数参数 数组元素作函数实参 数组名作函数参数 用多维数组名作函数参数 例8-1 数组元素作为函数实参举例说明(1) 例8-1 数组元素作为函数实参举例说明(2) 例8-1 数组元素作为函数实参举例说明(3) 例8-2 数组名作函数参数举例说明1 例8-3 数组名作函数参数举例说明2 说明(1) 用数组名与用数组元素名作函数参数不同点: 说明(2) 2) 用普通变量或下标变量作函数参数时,形参变量和实参变量是由编译系统分配的两个不同的内存单元。在函数调用时发生的 值传送 是把实参变量的值赋予形参变量。 用数组名作函数参数时,不是进行值的传送,即不是把实参数组的每一个元素的值都赋予形参数组的各个元素。因为实际上形参数组并不存在,编译系统不为形参数组分配内存。那么,数据的传送是如何实现的呢?我们曾介绍过,数组名就是数组的首地址。因此在数组名作函数参数时所进行的传送是 地址传送 ,就是把实参数组的首地址赋予形参数组名。形参数组名取得该首地址之后,也就等于有了实在的数组。实际上形参数组和实参数组是同一数组,共同拥有一段内存空间。 说明(3) 例8-4 数组名作函数参数举例说明3(1) 例8-4 数组名作函数参数举例说明3(2) 例8-4 数组名作函数参数举例说明3(3) 用多维数组名作函数参数的说明 例8-5 用多维数组名作函数参数举例(1) 例8-5 用多维数组名作函数参数举例(2) 2.局部变量和全局变量 局部变量 在一个函数内部定义的 变量是内部变量,只在本函数 范围内有效。 全局变量 全局变量可以为本文件中其他函数所共用。其有效范围为从定义变量的位置开始到本源文件结束。 说 明 对于前四点的图形说明 有关全局变量的图示说明 几点说明 例8-6 全局变量使用举例(1) 例8-6 全局变量使用举例(2) 例8-7 外部变量与内部变量同名举例 3.变量的存储类型(1) 3.1 动态存储和静态存储方式 3.2 auto变量 3.3 用static声明局部变量 3.4 register变量 3.5 用extern声明外部变量 3.6 用static声明外部变量 3.7 关于变量的声明和定义 3.8 存储类别小结 3.变量的存储类型(2) 3.1 动态存储方式与静态存储方式(1) 定义 1)静态存储方式是指在程序运行期间分配固定的存储空间的方式。 2)动态存储方式是在程序运行期间根据需要进行动态的分配存储空间的方式。 从内存中供用户使用的存储空间的情况来分析存储方式 存储空间分为三部分: 1)程序区 2)静态存储区 3)动态存储区 3.变量的存储类型(3) 3.1 动态存储方式与静态存储方式(2) 3.变量的存储类型(4) 3.2 auto变量(1) 3.变量的存储类型(5) 3.2 auto变量(2) 3.变量的存储类型(6) 3.3 用static声明局部变量 3.变量的存储类型(7) 3.4 register 变量 3.变量的存储类型(8) 3.5 用extern声明外部变量 3.变量的存储类型(9) 3.6 用static声明外部变量 3.变量的存储类型(10) 3.7关于变量声明和定义的说明(1) 3.变量的存储类型(11) 3.7关于变量声明和定义(2) 3.变量的存储类型(12) 3.8 存储类别小结 4.内部函数与外部函数 例8-13 用extern声明所用的函数(1) 例8-13 用extern声明所用的函数(2) 例8-13 用extern声明所用的函数(3) 5.如何运行一个多文件的程序 用Turbo C集成环境 在MS C上运行编译连接 用#include 命令 用 Turbo C集成环境(1) 用Turbo C集成环境(2) 用#include 命令 作业 思考题 变量的存储类别 上机实验六 说明(1) 说明(2) 例8-8 考察静态局部变量的值(1) 例8-8 考察静态局部变量的值(2) 例8-9 打印1到5的阶乘 关于register变量使用说明 例8-10 使用寄存器变量 例8-11 用extern声明外部变量,扩展程序文件中的作用域 例8-12 用extern将外部变量的作用域扩展到其他文件 变量所在的函数在调用结束后,该变量所占用的存储单元不释放,在下一次该函数调用时,该变量已有值,就是上一次函数调用结束时的值。 例题8-8 考察静态局部变量的值 说明 例题8-9 打印1到5的阶乘 如果有一些变量使用频繁,则为存取变量的值要花不少时间。为提高执行效率,C语言允许将局部变量的值放在C

文档评论(0)

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

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

1亿VIP精品文档

相关文档