学习C++看到的关于参数以及参数传递方式

函数的参数:
1.形式参数
定义函数时的变量名称为形式参数。形式参数的特点:

(1).当被调用的函数有参数时,主调函数和被调用函数之间通过形式参数实现数据传递。


(2).函数的形参仅在函数被调用时,才由系统分配内存,用于接收主调函数传过来的实际参数。




2.实际参数
在主调函数中调用一个函数时,函数名后面的参数或者表达式称为实际参数。实际参数主要有以下特点:

(1)函数调用时,实参的类型应该和形参的类型一一对应或者兼容

(2)实参应该有确定的值,可为常量,变量或表达式。

(3)函数调用时系统才为形参分配内存,与实参占用不同的内存,即使形参和实参同名也不会混淆。函数调用结束时,形参所占用的内存即被释放。



参数传递方式


函数调用时,实参和形参进行了数据的传递。根据实参向形参传递数据的方式分为3种方式:按值传递,按地址传递和按引用传递。


1.按值传递 也称作传值(函数的复印  也就是形参是实参的复印,形参的改变不会改变实参。)
形式:形参为普通变量,实参为表达式或变量,实参向形参赋值。
特点:参数传递后,实参和形参不再有任何联系。
注意:实参是表达式,故形参不能给实参赋值。函数调用时,系统为形参分配相应的存储单元,用于接收实参传递的数据。函数调用期间,形参和实参各自拥有独立的存储单元。函数调用结束,系统回收分配给形参的存储单元。
传值调用的优点:函数调用对其外界的变量无影响,最多只能用return返回一个值,函数独立性强。


2.按引用传递 又称传引用(形参改变 实参也变)
引用即变量的别名,对别名的访问就是对别名所关联变量的访问。“&”称为引用符。


例:int i; int &ai=i; ai=15;i的值也为15;i=100 ai的值也为100


使用引用应该注意:
(1)定义引用时,应同时对它初始化,使他和一个类型相同的已有变量关联。
(2)一个引用与某变量关联,就不能再与其他变量关联。
(3)引用主要用作函数的形参和返回值。
     按引用方式调用形式:形参为引用型变量,实参是变量为引用型形参初始化。


特点:参数传递后,形参是实参的别名,修改了形参,实参也随着发生变化。函数调用时,系统不再为形参分配存储单元,形参就是在被调用函数中实参的别名,也就是说他们是同一个存储单元。







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值