浅谈形参和实参

来源:互联网 发布:57是什么意思网络用语 编辑:程序博客网 时间:2024/06/05 14:54

       以前对形参和实参的感觉总是很模糊,为什么模糊不清呢?给自己回答总是:没有好好总结!

       这两个月软考,多次遇到这问题,于是想把这知识点总结一下。

       1、定义:

             实参:全名叫“实际参数”,它可以是常量、变量、表达式、函数等,是在调用时传递时传递给函数的参数

             形参:全称叫“形式参数”,它不是实际存在的变量,所以又叫“虚拟变量”

 

         2、功能:

            他们都是用来数据传送的。

 

     3、区别:

           实参:实参出现在主调函数中,在进行函数调用的时候,实参必须有确定的值。

                     因此预先给实参赋值,输入等方法使实参获得确定的值。以便把确定的值传给形参(“虚拟变量”)

 

           形参:只有在被调用时才分配内存单元,当调用结束后,马上释放所分配的内存单元。因此形参只在函数内部有效。

        

        4、  说到这里,不得不说,函数参数的传递机制。

           参数的传递机制分:值传递(Byval)和引用传递(ByRef)。 

           (1)值传递(Byval):顾名思义传递的值 。

            比如A函数调用B函数,如果AB两个函数采用的按值传递来传递参数。那么就是A函数调用B函数,从B函数传过去的是实参的值,就是在堆栈中开辟了内存空间以存放由主调函数A放进来的实参的值,从而形成了实参的一个副本,操作的是实参的副本,因此值传递是不改变实参的值的。 

           (2)引用传递(ByRef)

             “引用”其实就是一个路标,指向目的地。因此引用传递其实传递的是地址(即实参的地址)。是对实参的操作,因此会改变实参的值。

          

           

 

 

 

0 0
原创粉丝点击