函数调用 一个C程序由主函数和若干个或0个用户函数组成。C语 言中的函数没有隶属关系,即所有的函数都是独立定义 的,不能嵌套定义,函数是通过调用来执行的,允许函 数间互相调用,也允许直接或间接的递归调用其自身 man函数是主函数,它可以调用其它函数,而不允许 被其它函数调用 令调用另一个函数的函数称为主调函数,被调用的函数称 为被调函数 个函数调用另一个函数时是将流程控制 转到被调函数,被调函数执行完后返回主调函数的调用 处继续主调函数的执
函数调用 ❖ 一个C程序由主函数和若干个或0个用户函数组成。C语 言中的函数没有隶属关系,即所有的函数都是独立定义 的,不能嵌套定义,函数是通过调用来执行的,允许函 数间互相调用,也允许直接或间接的递归调用其自身。 ❖ main 函数是主函数,它可以调用其它函数,而不允许 被其它函数调用。 ❖ 调用另一个函数的函数称为主调函数,被调用的函数称 为被调函数。一个函数调用另一个函数时是将流程控制 转到被调函数,被调函数执行完后返回主调函数的调用 处继续主调函数的执行
72函数的定义 令调用函数必须遵循“定义在先、使用在后”的原则。函 数定义的一般格式 冷类型说明函数名(类型说明符形参变量1,类型说明符 形参变量2,…) 令语句部分
7.2 函数的定义 ❖ 调用函数必须遵循“定义在先、使用在后”的原则。函 数定义的一般格式: ❖ 类型说明 函数名(类型说明符 形参变量1,类型说明符 形参变量2,…) ❖ { ❖ 语句部分 ❖ }
1.函数头 包括函数名、函数的类型及形式参数表。 (1)函数名 冷用标识符表示,用来标识一个函数的名字,函数名后面必须有 对圆括号。除main函数外,其他函数可以按标识符规则任意 命名,穆序风格要求函数命名是能反映函数功能、有助于记忆 (2)函数类型 冷函数名前的函数类型是指函数返回值的类型。如为整型int可省 略不写:如无返回值,以voi类型明示。如果函数为无参函数 函数类型说明为void型(空值类型),否则,可能导致程序出错。 (3)形式参数表 圆括号内为形式参数表列部分,其中的参数称为形式参数,它 包括函数的自变量部分。每个参数前都应用相应的类型标识符 明,有多个参数时用逗号分开。如果是无参数函 数,形式参数表列部分为空,但一对0不能省略
1.函数头 ❖ 包括函数名、函数的类型及形式参数表。 (1)函数名 ❖ 用标识符表示,用来标识一个函数的名字,函数名后面必须有 一对圆括号。除main函数外,其他函数可以按标识符规则任意 命名,程序风格要求函数命名是能反映函数功能、有助于记忆 的标识符。 (2)函数类型 ❖ 函数名前的函数类型是指函数返回值的类型。如为整型int可省 略不写;如无返回值,以void类型明示。如果函数为无参函数, 而且在调用后没有返回值。在这种情况下,C语言规定应当将 函数类型说明为void型(空值类型),否则,可能导致程序出错。 (3)形式参数表 ❖ 圆括号内为形式参数表列部分,其中的参数称为形式参数,它 包括函数的自变量部分。每个参数前都应用相应的类型标识符 对参数进行说明,有多个参数时用逗号分开。如果是无参数函 数,形式参数表列部分为空,但一对()不能省略
2.函数体 令函数体是函数头下面最外层一对花括号内的代码,它是 由一系列语包构成的,用以实现函数的功能,函数体内 可以有函数说明、变量说明以及可执行语句。 函数体也可以是一对空的花括号,例如: void dummy(void 冷这是一个“空函数”,调用它并不产生任何有效的操作 但却是一个符合C语言语法的合法函数。在程序开发过 程中,通常先开发主要函数,二些次要的函数或有待以 星亮酸信流腾数驾写盛要教猫门 句或执行完函数体所有语句,流程就回到主调函数
2.函数体 ❖ 函数体是函数头下面最外层一对花括号内的代码,它是 由一系列语句构成的,用以实现函数的功能,函数体内 可以有函数说明、变量说明以及可执行语句。 ❖ 函数体也可以是一对空的花括号,例如: void dummy(void) { } ❖ 这是一个“空函数”,调用它并不产生任何有效的操作, 但却是一个符合C语言语法的合法函数。在程序开发过 程中,通常先开发主要函数,一些次要的函数或有待以 后扩充和完善功能的函数暂时写成空函数,使程序可以 在不完整情况下调试部分功能。当函数执行到return语 句或执行完函数体所有语句,流程就回到主调函数
关于 return语句说明如下 return语句是函数的逻辑结尾,不一定是函数的最后 条语句,一个函数中允许出现多个 return语句,但每次 能有一个 return语句被执行 令如果不需要从被调函数带回返回值可以不要 -return语句 一般情况是将函数类型定义为void型,也叫空类型,此 种类型的函数一般用来完成某种操作例如输出程序运行 结果等。 令还可以用不带表达式的 reture作为函数和逻辑结尾,这 时, reture的作用是将控制权交给调用函数,而不是返 回一个值
关于return语句说明如下: ❖ return语句是函数的逻辑结尾,不一定是函数的最后一 条语句,一个函数中允许出现多个return语句,但每次 只能有一个return语句被执行。 ❖ 如果不需要从被调函数带回返回值可以不要return语句。 一般情况是将函数类型定义为void型,也叫空类型,此 种类型的函数一般用来完成某种操作例如输出程序运行 结果等。 ❖ 还可以用不带表达式的reture作为函数和逻辑结尾,这 时,reture的作用是将控制权交给调用函数,而不是返 回一个值