c语言中,形参和实参的区别是什么?

如题所述

有以下区别:
1、主体不同:实参在调用有参函数时,函数名后面括号中的参数为“实际参数”。形参不是实际存在变量,又称虚拟变量。
2、目的不同:实参可以是常量、变量或表达式,无论实参是何种类型的量,在进行函数调用时,都必须具有确定的值,以便把这些值传送给形参。
需要注意当形参和实参不是指针类型时,在该函数运行时,形参和实参是不同的变量,他们在内存中位于不同的位置,形参将实参的内容复制一份,在该函数运行结束的时候形参被释放,而实参内容不会改变。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-08-07
形参就是形式参数,用一个变量代表大家。实参就是实际参数,用一个
确切的数值代替形式参数,可以是表达式。实际参数与形式参数的参数个数、类型和顺序都应一样,如果不一样的话,系统会强制转换,这样会造成数据的丢失。实
参向形参的传递是值的传递。
这个值就是对实参的表达式进行计算的结果,它可以是常量值、变量值、数组元素、函数值等。如果实参是数组名了,那么它传送的就是地址的值了。比如:
double
power(double
x
,int
n)定义一个双精度参数
power(3.0,5)
调用
x
n
是形参,3.0,5是实参。如果上面定义的是整形
double
power(int
x
,int
n),下面调用的是power(3.3,5)那么实参中3.3会被转换成3,一部分数据丢失了。本回答被提问者采纳
第2个回答  2019-08-25
形参只有在函数调用时才会被临时分配内存,调用结束内存释放,而且形参和实参是单向传递的,只能由实参传给形参……
相似回答