c#中实参和形参的区别

如题所述

第1个回答  推荐于2017-11-28
形参:在定义函数中指定的参数就是形参,在未出现函数调用时,他们并不占内存中的存储单元,只有在发生函数调用时,函数中的形参才被分配内存单元。在调用结束后,形参所占的内存单元也被释放。
实参:实参可以是常量、变量和表达式,但要求有确定的值。在调用时将实参的值赋给形参。在内存中,实参单元和形参单元是不同的单元。在调用函数时,给形参分配存储单元,并将实参对应的值传递给形参,调用结束后,形参单元被释放,实参单元仍保留原值。
C#中有两种类型的数据,一种为值类型;另一种为引用类型。理解这两种数据类型,有利于进一步编程和实现。
他们最大的区别就是存储的位置不同,前者值类型存储在内存的堆栈中(一些书上面也说是【栈】),后者存储在内存堆中(一些书上面说是【堆】),栈中的内存不需要自己就能回收,内存堆中的数据需要.Net FrameWork 自己的内存清理机制进行回收。
值类型的数据传递参数的时候,默认情况下采用传递形参,实参的内容不变,如果想把实参传递过去,那么,在C#中只有通过ref关键字来实现。其实这里面的ref和c/c++中的地址引用差不多,具体原理没有深究,但是可以这么理解。
但是引用类型传递的时候是传递的内存的地址,也就是“传递实参”。所以有些时候就能够理解一些东西了。比如:DataSet传递时候,就是传递的“实参”。他也就是引用类型。
值类型不是很多,int float double char等。注意:string为引用类型。这个比较特殊。

参考资料:http://zhidao.baidu.com/question/436189789.html

本回答被提问者采纳

c语言中形参和实参的区别?
有以下区别:1、主体不同:实参在调用有参函数时,函数名后面括号中的参数为“实际参数”。形参不是实际存在变量,又称虚拟变量。2、目的不同:实参可以是常量、变量或表达式,无论实参是何种类型的量,在进行函数调用时,都必须具有确定的值,以便把这些值传送给形参。需要注意当形参和实参不是指针类型...

C#中形参和实参有什么区别和联系?
形参出现在函数定义中,在整个函数体内都可以使用, 离开该函数则不能使用。实参出现在主调函数中,进入被调函数后,实参变量也不能使用。 形参和实参的功能是作数据传送。发生函数调用时, 主调函数把实参的值传送给被调函数的形参从而实现主调函数向被调函数的数据传送。1.形参变量只有在被调用时才分...

c#的形参和实参有什么用
1、形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只在函数内部有效。函数调用结束返回主调用函数后则不能再使用该形参变量。2、实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须有确定的值,以便把这些值传送给...

c语言中形参和实参的区别?
1. 本质区别: 实参,即实际参数,是在函数调用时,函数名后面括号内提供的具体数值或表达式。它们是函数调用时传递给形参的实体。相反,形参,也称为虚拟变量或参数变量,是在函数定义时声明的,用来接收实参传递的值,但并非实际存在于内存中的变量。2. 目的和作用: 实参可以是常量、变量或表达式,调...

什么叫实参 形参 怎么用 区别
有以下区别:1、主体不同:实参在调用有参函数时,函数名后面括号中的参数为“实际参数”。形参不是实际存在变量,又称虚拟变量。2、目的不同:实参可以是常量、变量或表达式,无论实参是何种类型的量,在进行函数调用时,都必须具有确定的值,以便把这些值传送给形参。需要注意当形参和实参不是指针类型...

形参与实参的区别,怎么区分呢
一、主体不同 1、实参:在调用有参函数时,函数名后面括号中的参数为“实际参数”。2、形参:不是实际存在变量,又称虚拟变量。二、目的不同 1、实参:可以是常量、变量或表达式, 无论实参是何种类型的量,在进行函数调用时,都必须具有确定的值, 以便把这些值传送给形参。2、形参:定义函数名和...

形参与实参的区别
有以下区别:1. 主体不同:- 实参:在调用有参函数时,函数名后面括号中的参数,即实际传入的参数。- 形参:函数定义时参数列表中的参数,不是实际存在的变量,也称作虚拟变量。2. 目的不同:- 实参:可以是常量、变量或表达式。在函数调用时,实参必须具有确定的值,用于将这些值传递给形参。- 形参...

形参与实参的区别
1. 存在位置:形参存在于函数定义中,而实参存在于函数调用时。2. 作用不同:形参是函数内部使用的变量,用于接收和处理数据;实参则是调用函数时传递的实际数据。3. 生命周期:形参的生命周期仅限于函数执行期间;实参则存在于函数调用上下文之外,其值在函数调用结束后保持不变。总的来说,形参和实参...

c语言中形参和实参是什么意思?有什么区别?
实参就是实际参数,用一个 确切的数值代替形式参数,可以是表达式。实际参数与形式参数的参数个数、类型和顺序都应一样,如果不一样的话,系统会强制转换,这样会造成数据的丢失。实 参向形参的传递是值的传递。\\x0d\\x0a\\x0d\\x0a这个值就是对实参的表达式进行计算的结果,它可以是常量值、变量值...

c++中,实参和形参有什么区别?
有以下区别:1、主体不同:实参在调用有参函数时,函数名后面括号中的参数为“实际参数”。形参不是实际存在变量,又称虚拟变量。2、目的不同:实参可以是常量、变量或表达式,无论实参是何种类型的量,在进行函数调用时,都必须具有确定的值,以便把这些值传送给形参。需要注意当形参和实参不是指针类型...

相似回答