2 6.3函数的返回值 例无返回值函数 void swap(int x,int y 一返回语句 { int temp, ·形式: return(表达式); temp-x; 或 return 表达式; x-y; 或 y-temp; return; ·功能:使程序控制从被调用因效必凹到用凶敛中, 同时把返值带给调用函数 ·说明: -函数中可有多个return语句 -若无return语句,遇}时,自动返回调用函数 -若函数类型与return语句中表达式值的类型不一致,按前 者为准,自动转换一函数调用转换 -void型函数
• 6.3 函数的返回值 – 返回语句 • 形式: return(表达式); 或 return 表达式; 或 return; • 功能:使程序控制从被调用函数返回到调用函数中, 同时把返值带给调用函数 • 说明: – 函数中可有多个return语句 – 若无return语句,遇}时,自动返回调用函数 – 若函数类型与return语句中表达式值的类型不一致,按前 者为准,自动转换-函数调用转换 – void型函数 例 无返回值函数 void swap(int x,int y ) { int temp; temp=x; x=y; y=temp; }
例函数带回不确定值 printstar() void printstar() {printf("****")方 {printf("****")方 main() main() int a; { int a, a=printstar(); a=printstarO); printf("d",a); printf("%d",a); 输出:10 编译错误! 米
printstar() { printf("**********"); } main() { int a; a=printstar(); printf("%d",a); } 例 函数带回不确定值 输出:10 void printstar() { printf("**********"); } main() { int a; a=printstar(); printf("%d",a); } 编译错误!
6.4函数的调用 -调用形式 函数名(实参表); 说明: 一实参与形参个数相等,类型一致,按顺序一一对应 -实参表求值顺序,因系统而定(Turbo C自右向左)
• 6.4 函数的调用 – 调用形式 函数名(实参表); 说明: – 实参与形参个数相等,类型一致,按顺序一一对应 – 实参表求值顺序,因系统而定(Turbo C 自右向左)
调用方式 ·函数语句: 例printstar(O; printf("Hello,World!\n"); ·函数表达式: 例m=max(a,b)*2; ·函数参数: 例 printf(“%d”,max(a,b); m=max(a,max(b,c));
– 调用方式 • 函数语句: 例 printstar(); printf(“Hello,World!\n”); • 函数表达式: 例 m=max(a,b)*2; • 函数参数: 例 printf(“%d”,max(a,b)); m=max(a,max(b,c));
函数说明 ·对被调用函数要求: 一必须是已存在的函数 -库函数:#include<*.h> 一用户自定义函数:函数类型说明 ·函数说明 一一般形式: 函数类型 函数名(形参类型[形参名],.); 或 函数类型 函数名(0; 一作用:告诉编译系统函数类型、参数个数及类型,以便检验 -函数定义与函数说明不同 一函数说明位置:程序的数据说明部分(函数内或外) 一下列情况下,可不作函数说明 》若函数返值是char或int型,系统自动按int型处理 》被调用函数定义出现在主调函数之前
– 函数说明 • 对被调用函数要求: – 必须是已存在的函数 – 库函数: #include <*.h> – 用户自定义函数: 函数类型说明 • 函数说明 – 一般形式: 函数类型 函数名(形参类型 [形参名],. ); 或 函数类型 函数名(); – 作用:告诉编译系统函数类型、参数个数及类型,以便检验 – 函数定义与函数说明不同 – 函数说明位置:程序的数据说明部分(函数内或外) – 下列情况下,可不作函数说明 » 若函数返值是char或int型,系统自动按int型处理 » 被调用函数定义出现在主调函数之前