2函数调用的方式 C语言中调用函数通常有函数表达式、函数 语句和函数实参3种方式,下面分别举例介绍 (1)函数表达式方式:函数调用出现在表达 式中,这种表达式称为函数表达式。这种方式 要求函数一定要有返回值,以参加表达式的运 算。否则会出现表达式错误 (2)函数语句方式:函数调用的一般形式加 上分号即构成函数语句。这种方式不需要函数 有返回值
2.函数调用的方式 C语言中调用函数通常有函数表达式、函数 语句和函数实参3种方式,下面分别举例介绍。 (1)函数表达式方式:函数调用出现在表达 式中,这种表达式称为函数表达式。这种方式 要求函数一定要有返回值,以参加表达式的运 算。否则会出现表达式错误。 (2)函数语句方式:函数调用的一般形式加 上分号即构成函数语句。这种方式不需要函数 有返回值
3函数的声明 函数声明的一般形式为: 类型名函数名(类型形参,类型形参..) 括是内给出了形参的类型和形参名,这便于 编译系统进行检错,以防止可能出现的错误 注意,函数声明后面的分号“;”不能少 C语言规定,对以下几种情况可以省去主调 用函数中对被调用函数的函数说明(声明 )当被调用函数的返回值是整型或字符型时, 可以不在主调用函数中说明而直接调用。这时系 统将自动对被调用函数返回值按整型处理。 2)当被调用函数的函数定义出现在主调用函 数之前时,主调用函数中不用再对被调用函数说 明,可以直接调用
3.函数的声明 函数声明的一般形式为: 类型名 函数名(类型 形参,类型 形参…); 括号内给出了形参的类型和形参名,这便于 编译系统进行检错,以防止可能出现的错误。 注意,函数声明后面的分号“;”不能少。 C语言规定,对以下几种情况可以省去主调 用函数中对被调用函数的函数说明(声明)。 (1)当被调用函数的返回值是整型或字符型时, 可以不在主调用函数中说明而直接调用。这时系 统将自动对被调用函数返回值按整型处理。 2)当被调用函数的函数定义出现在主调用函 数之前时,主调用函数中不用再对被调用函数说 明,可以直接调用
3)如在所有函数定义之前,在函数外预先说明了 各个函数的类型,则在以后的各主调用函数中 不用再对被调用函数作说明 4)对库函数的调用不需要再作说明,但必须把该 函数的头文件用 include命令包含在源文件前部 613函数的参数和函数的值 1.函数的参数 在调用函数时,主调用函数把实参的值传送给被 调用函数的形参,从而实现了主调用函数向被调 用函数的数据传递 参数传递具有以下特点: (1)实参与形参各自占用独立的存储单元,函数 调用时才将实参的值传递给形参单元
3)如在所有函数定义之前,在函数外预先说明了 各个函数的类型,则在以后的各主调用函数中, 不用再对被调用函数作说明。 4)对库函数的调用不需要再作说明,但必须把该 函数的头文件用include命令包含在源文件前部。 6.1.3 函数的参数和函数的值 1. 函数的参数 在调用函数时,主调用函数把实参的值传送给被 调用函数的形参,从而实现了主调用函数向被调 用函数的数据传递。 参数传递具有以下特点: (1)实参与形参各自占用独立的存储单元,函数 调用时才将实参的值传递给形参单元
(2)形参变量只有在发生函数调用时才临时分 配内存单元,在调用结束时,即释放所分配的内 存单元。因此形参只在函数内部有效,函数调用 结束返回主调用函数后,形参变量不再存在,不 要企图在主调用函数中去使形参变量 (3)实参可以是常量、变量、表达式、函数等, 无论实参是何种类型的量,在进行函数调用时, 它们都必须具有确定的值,以便把这些值传递给 形参 (4)实参和形参在数量上、类型上、顺序上应 严格一致,否则会发生“类型不匹配”错误。 (5)函数调用中发生的数据传递是单向的。即 只能把实参的值传送给形参,而不能把形参的值 反向地传送给实参。因此在函数调用过程中,形 参的值发生改变不会影响实参的值
(2)形参变量只有在发生函数调用时才临时分 配内存单元,在调用结束时,即释放所分配的内 存单元。因此形参只在函数内部有效,函数调用 结束返回主调用函数后,形参变量不再存在,不 要企图在主调用函数中去使用形参变量。 (3)实参可以是常量、变量、表达式、函数等, 无论实参是何种类型的量,在进行函数调用时, 它们都必须具有确定的值,以便把这些值传递给 形参。 (4)实参和形参在数量上、类型上、顺序上应 严格一致,否则会发生“类型不匹配”错误。 (5)函数调用中发生的数据传递是单向的。即 只能把实参的值传送给形参,而不能把形参的值 反向地传送给实参。因此在函数调用过程中,形 参的值发生改变不会影响实参的值
2.函数的值 函数的值是指函数被调用结束之后,返回给主调用函 数的值 有两种情况可以终止被调用函数的执行并返回到调用 它的函数中:一是执行到函数的最后一条语句后自然返 回到调用它的函数中的调用处,这种情况一般不要求函 数返回值;一是在函数执行过程中遇到返回语句时,将 终止后续语句的执行,直接返回到调用它的函数中的调 用处,这种情况一般都要求被调用函数返回一个值;C语 言中的返回语句为 Ireturn语句。 return语句的一般形式为: return表达式: 或 return(表达式);
2. 函数的值 函数的值是指函数被调用结束之后,返回给主调用函 数的值。 有两种情况可以终止被调用函数的执行并返回到调用 它的函数中:一是执行到函数的最后一条语句后自然返 回到调用它的函数中的调用处,这种情况一般不要求函 数返回值;一是在函数执行过程中遇到返回语句时,将 终止后续语句的执行,直接返回到调用它的函数中的调 用处,这种情况一般都要求被调用函数返回一个值;C语 言中的返回语句为return语句。 return 语句的一般形式为: return 表达式; 或 return (表达式);