《C/C 程序设计》第04章(函数).ppt

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 函数 4.1 综述 C 是函数型语言, C 程序的基本部件是函数. 一个函数完成一个特定功能, 整个 程序的功能靠一系列的函数调用来实现. C程序的执行顺序与函数出现的顺序无关, 只与函数的调用顺序有关. C约定无论何时, 首先调用的函数是 main( ). C函数分两种: 用户自己定义的函数和库函数. 使用库函数时应当包含其头文件. * main( ) f2( ) f3( ) f1( ) f4( ) f5( ) 4.3 函数的定义和调用 4.3 .1 函数定义 函数定义的一般形式: 函数属性说明 函数(值)类型说明 函数名( 类型标示符参数名1 [,类型标示符 参数名2, ….] ) 如:static float sum(float x,float y) /* static 、extern*/ { 说明部分 执行部分 返回部分[ return 表达式] } [例] 求n!的函数。(exn.c) 4.3.2 函数的调用 C语言规定,当在一个函数中要调用另一个函数时,则必须在调用函数的函数块中对被调函数进行类型的声明。(有例外) 1.对被调用的函数的声明方式: [存储类别] 数据类型 函数名(); 如:static int fun(); float area(); 2.函数的调用格式 调用一个带有参数的函数: 函数名(实参表); 如:fun(8); 调用一个不带参数的函数:函数名(); 如:print(); 3.关于函数调用的几点说明 (1)函数调用时,实参和形参必须按位置在个数和类型上一一对应; (2)除void类型外的其它类型函数,调用方式如同系统库函数中的数学函数的调用形式一样,可以作为表达式的元素进行调用. (3)整型、实型、字符型函数,用return语句可以返回也只能返回一个函数值,如果希望能从函数返回多个值,则要采用指针、数组等其它传值方式。 (4)C语言中如果形参不是指针、不是数组,则实参只能单向传值,即只能是实参将值传给形参,而形参不能将值返回给实参。 (5)C语言规定在调用一个函数时,应该对被调函数进行声明。但有三种情况可以不用声明: ·如果调用的函数是整型和字符型 ·如果被调函数是放在主调函数的前面 ·如果被调函数已经作了全局声明 [例] 求素数函数。(exprime.c) 4.4 变量的存储类别和变量的使用范围 变量的存储类型规定了该变量的存储区域,而变量的存储区域和变量在程序中的定义位置决定了变量的使用范围。 内容:.什么是局部变量和全局变量(变量的作用范围) .什么是动态变量和静态变量(变量的存储类别) . 什么是寄存器变量等有关概念。 4.4.1变量的存储类别(auto、static、register、extern) 一、auto型:auto型变量在堆栈区域中属于临时性的存储,它并不长期占用内存。因此,C 语言程序中大量的变量为auto型的变量,如果某个变量没有指出它的存储类别,则系统默认它为auto型变量。使用auto型变量可以节省内存空间。只有局部变量和形参可以定义为auto类型。 二、static型: static型变量是存放在内存的静态存储区域中。这类变量在数据声明时被分配了一定的内存空间,并且这些空间在整个程序的运行过程中,它所占有的空间不释放出来,自始至终都归它使用。其初始化只执行一次。如: static int t; [例] exstatic.c(比较 static int t=1;与int t=1;的不同) 三、register 型 四、extern型:在函数内部定义的变量,都局限在函数内部使用。定义在函数外部的变量,可以与其它函数或其它文件共享数据。extern 语句就是用来对外部变量进行存储方式说明。外部变量提供了不同函数间进行数据通讯的另一种途径。因此当一个程序要用到另一个程序中的某个变量时,就需要将该变量声明为extern类型。 4.4.2 变量的作用范围 变量在程序中的声明位置决定了变量的使用范围。在一个函数内部定义的变量,或在某一对大括号中定义的变量,它的作用范围就在定义的范围之内,脱离了这个范围它们的值就不存在了,这样的变量称为局部变量,也可称为内部变量。与此相对应,有些变量存在于整个程序的运行期间,他们是定义在函数的外部,称全局变量,其特点为能在不同的函数块之间进行数据的传递。具有静态存储的特点

文档评论(0)

勤能补拙 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档