C++基础---函数的参数

本文详细介绍了函数参数的概念,包括形参与实参的区别、缺省参数的定义及使用规则,并通过实例展示了如何应用带缺省参数的函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.函数的参数

1.1 形参的定义

  • 形参:全称为“形式参数”。
  • 形参:是在定义函数名和函数体的时候使用的参数。
  • 形参:不是实际存在变量,所以又称虚拟变量,目的是用来接收调用该函数时传递的参数。

1.2 实参的定义

  • 实参:全称为“实际参数”。
  • 实参:是在调用时传递给函数的参数,即传递给被调用函数的值。
  • 实参:可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,目的是把这些值传送给形参。

1.3 形参与实参的区别

  • 形参:
    (1)形参出现在函数定义中,在整个函数体内都可以使用,离开该函数则不能使用。
    (2)只有在被调用时才分配内存单元,在调用结束时, 即刻释放所分配的内存单元。因此,形参只有在函数内部有效。 函数调用结束返回主调函数后则不能再使用该形参变量。
  • 实参:
    (1)出现在主调函数中,进入被调函数后,实参变量也不能使用。
    (2)可以是常量、变量、表达式、函数等, 无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值, 以便把这些值传送给形参。 因此应预先用赋值,输入等办法使实参获得确定值。
  • 形参和实参的功能:是用作数据传送。发生函数调用时,主调函数把实参的值传送给被调函数的形参,从而实现主调函数向被调函数的数据传送。实参和形参在数量上,类型上,顺序上应严格一致, 否则会发生“类型不匹配”的错误。
    注:函数调用中发生的数据传送是单向的。 即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。 因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。

1.4 缺省参数的定义

  • 缺省参数:是在声明函数的某个参数的时候为之指定一个默认值,在调用该函数的时候如果采用该默认值,你就无须指定该参数,缺省值必须是常量
    注:缺省参数使用主要规则:调用时你只能从最后一个参数开始进行省略,换句话说,如果你要省略一个参数,你必须省略它后面所有的参数,即:带缺省值的参数必须放在参数表的最后面。

1.5 带缺省参数的函数

  • C++在声明函数原型时,可为一个或多个参数指定缺省参数值,以后调用此函数,若省略其中某一参数,C++自动地以缺省值作为相应参数的值。例如函数原型说明为: int special(int x=5, float y=5.3);
    当进行函数调用时,可以有以下几种形式:

    special(100, 79.8);// x=100,y=79.8 
    special(25);// x=25,y=5.3 
    special();// x=5,y=5.3 
    注:(1)只能在声明时设置默认参数;
    (2)缺省参数都必须是从右到左定义,如:
    int fun(int i,int j=5,int k);//错误,k未使用 
    (3)调用时实参对形参的初始化必须是从左向右的;

参考文献:
[1]《C++全方位学习》范磊——第九章
[2]《C++程序设计教程(第二版)》钱能——第五章、第六章、第七章
[3]《C++ Primer(第5版)》王刚 杨巨峰——第一章、第六章
[4] 百度搜索关键字:形参、实参、缺省参数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值