4.3函数参数

大多数函数都是带参数的。参数有两种:形式参数和实际参数
在定义函数时函数名后面括号中的变量名称为形式参数,简称形参
在主调函数中调用被调函数时,函数名后面括号中的参数(可以是表达式)称为实际参数,简称实参
主调函数与被调函数之间的数据传递是通过实参和形参来进行的

C/C++提供了max函数,可以求两个数的较大值。出于学习的目的,我们可以模仿着自己定义mx函数,求两个数的较大值 

int mx(int x, int y) //定义有参函数mx:求两个数的较大者
{
    //条件表达式 A?B:C为三目运算符,表示A为真时,执行B;A为假时,执行C
    int m; m=x>y?x:y; 
    return(m);
}
int main()
{
    int a, b, c; cin >> a >> b;
    c = mx(a, b); //调用mx函数,给定实参为a,b 将函数返回值赋给c
    cout << c << endl;
    return 0; 
}

 当执行到语句“c=mx(a,b);”时,转而去执行mx函数。把实参a的值传递给形参x,把实参b的值传递给形参y。若x=56,y=67,mx执行完毕后,变量m的值为67,将这个值返回到main函数中,即返回到“c=mx(a,b);”语句处,把67赋值给c

①在定义函数时指定的形参,在未出现函数调用时,它们并不占内存中的存储单元并不是实际存在的数据,因此称它们是形式参数或虚拟参数
②除特殊函数外,实参个数必须与形参个数一致。此外,每个实参的类型必须跟对应的形参的类型一致或赋值兼容
实参可以是常量、变量或表达式。如mx(3,a+b),但要求a和b有确定的值。如果实参是变量,为避免混淆,建议初学者将形参和实参用不同的变量名表示
实参变量对形参变量的数据传递是“值的传递”,即单向传递,只由实参传给形参,而不能由形参传回来给实参。假设实参为a和b,形参为x和y,在调用函数时将实参a和b的值分别传给形参x和y,在值传递之后,a和x就没有任何关联了

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值