[数学]第8章_函数2.pptVIP

  1. 1、本文档共10页,可阅读全部内容。
  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文档。上传文档
查看更多
[数学]第8章_函数2

第八章 8.1 概述 (3)若被调用函数定义出现在主调函数之前,可以不必声明。例: float add(float x,float y) {float z; z=x+y; return(z); } main() {float a,b,c; scanf(“%f,%f”,a,b); c=add(a,b); printf(“%f”,c); } (4)若在函数定义之前, 在函数的外部已做了函数声明,则在各个主调函数中不必对所调用的函数再作声明。 char letter(char,char); float f(float,float); int i(float,float); main() {…} char letter(char c1,char c2) {…} float f(float x,float y); {…} int i(float j,float k); {…} 8.7.3. 多维数组名作函数参数 在第二维大小相同的前提下,实参数组可以与形参数组不同,如: 定义实参数组为: int array[5][10]; 定义形参数组为: int array[3][10]; 或 int array[8][10]; 此时形参数组和实参数组都是由相同类型和大小的一维数组组成的。C语言编译系统不检查第一维的大小。 例8.14 有一个3×4的矩阵,求其中的最大元素。 说明 1、设全局变量的作用:增加了函数间数据联系的渠道。若在一个函数中改变了全局变量的值,就能影响到其他函数,相当于各个函数间有直接的传递通道。(约定第一个字母用大写) 例8.15 有一个一维数组,内放10个学生成绩,写一个函数,求出平均分、最高分和最低分。 3、如果在同一源文件中,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量被“屏蔽”,不起作用。 例 8.16 外部变量与局部变量同名 供用户使用的存储空间分为以下3部分: 1、程序区 2、静态存储区 3、动态存储区 数据分别存放在静态存储区和动态存储区中。 全局变量存放在静态存储区中,程序开始执行时给全局变量分配存储区,程序执行完毕释放存储区,程序执行过程中它们占据固定的存储单元。 (1)函数形参变量 (2)自动变量(未加static说明的局部变量) (3)函数调用时的现场保护和返回地址。 对以上数据,在函数调用开始时分配动态存储空间,函数调用结束时释放这些空间。在程序执行过程中,这种分配和释放是动态的。 以下2种情况需要用局部静态变量: (1)需要保留函数上一次调用结束时的值。 1、只有局部自动变量和形式参数可以作为寄存器变量,其他(如全局变量)不行。 在调用一个函数时占用一些寄存器,函数调用结束时释放寄存器。 2、不能定义任意多个寄存器变量,不同的计算机系统允许使用的寄存器个数不同。 ※不同的系统对register变量的处理不同。TurboC对寄存器变量当作自动变量处理,分配内存单元,并不放在寄存器中,因此,程序虽合法,但并不提高执行速度。 3、静态局部变量不能定义为寄存器变量。 后面写法错误:register static int a,b,c; 在一个文件内声明外部变量 外部变量有效范围限于定义处到文件尾。在定义点前的函数想引用该外部变量,应在引用前用extern做外部变量声明。 如果一个程序包含两个文件,两个文件中都要用到同一个外部变量num,不能在两个文件中各自定义一个num。 正确做法是:在任一个文件中定义一个num,在另一个文件中,用extern作变量声明,即extern num。 注意:用这样的全局变量应十分慎重,因为在执行一个文件中的函数时,可能已改变了该全局变量的值,从而影响另一个文件中函数的执行结果。 例8.21 用extern将外部变量的作用域扩展到其它文件。本程序的作用是给定b的值,输入a和m的值,求a乘b和a的m次方的值。 文件file1.c的内容为: 文件file2.c的内容为 int A; extern A; main( ) power(int n) {int powe

文档评论(0)

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

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档