函数 4 种调用方式:
- 作为表达式调用:将函数的返回值参与运算、赋值等表达式操作;
- 作为语句调用:仅执行函数的逻辑,不接收其返回值;
- 作为函数的实参调用:将函数的返回值作为参数传递给另一个函数;
- 在一个函数中调用另一个函数:在函数的实现逻辑中,嵌套调用其他函数。
#include <stdio.h>
int getBigger2(int a, int b){
if(a>b)
return a;
else
return b;
}
// 函数2:求三个整数的较大值(调用getBigger2)
int getBig3(int x, int y, int z){
// 先求x、y的较大值,再与z比较
return getBigger2(getBigger2(x,y), z);
}
// 函数3:返回参数+3
int f32(int n){
return n + 3;
}
// 函数4:打印分隔符
void printFOK(){
printf("=========================================\n");
printf("=========================================\n");
}
// 主函数(程序入口)
int main(){
// 调用getBig3,输出三个数的最大值
printf("max:%d\n", getBig3(1,2,3));
printFOK();
// 1. 将函数作为表达式调用(f32的返回值参与运算)
int rst = f32(10) + 20;
printf("rst:%d\n", rst);
printFOK();
// 2. 作为语句调用(仅执行函数,无返回值接收)
f32(10);
printFOK();
// 3. 作为函数的实参调用(f32的返回值传给f32)
int rst1 = f32(f32(10));
printf("rst1:%d\n", rst1);
}
运行效果图
#include <stdio.h>
int getBigger(int a,int b,int c){
int max = (a>b?a:b);
return (max>c?max:c);
}
int main49() {
int rst = getBigger(100,20,30);
printf("%d",rst);
return 0;
}
运行效果图