C语言中实参与形参的区别

如题所述

有以下区别:
1、主体不同:实参在调用有参函数时,函数名后面括号中的参数为“实际参数”。形参不是实际存在变量,又称虚拟变量。
2、目的不同:实参可以是常量、变量或表达式,无论实参是何种类型的量,在进行函数调用时,都必须具有确定的值,以便把这些值传送给形参。
需要注意当形参和实参不是指针类型时,在该函数运行时,形参和实参是不同的变量,他们在内存中位于不同的位置,形参将实参的内容复制一份,在该函数运行结束的时候形参被释放,而实参内容不会改变。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-10-08

    形参出现在函数定义中,在整个函数体内都可以使用,离开该函数则不能使用。实参出现在主调函数中,进入被调函数后,实参变量不能使用。

    形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。而实参在主调函数中已分配内存单元。

    实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,都必须具有确定的值,以便把这些值传送给形参。

    实参和形参在数量上,类型上,顺序上应严格一致,否则会发生类型不匹配”的错误。

    函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。

第2个回答  2013-03-07
实参是主函数调用子函数给的实际参数,进入子函数后,子函数会把这个实际参数拷贝一个副本变成子函数内部的局部变量,这就是形参。本回答被提问者采纳
第3个回答  2013-03-07
实参就是在函数调用的时候所写的参数,
形参就是函数内部使用的参数,
在函数调用时要创建一个实参的临时变量,然后在需要的时候把临时变量转换成形参的类型,
再把变量赋给形参,销毁临时变量,
函数返回时 return 后边的变量和 函数的的返回值的传递也类似的过程
第4个回答  2013-03-07
简单的说 在你的函数定义里面使用的形参,在你调用函数时是实参。实参向形参单向值传递。
相似回答