本文目录一览:
c语言中,形参和实参的区别是什么?
有以下区别:
1、主体不同:实参在调用有参函数时,函数名后面括号中的参数为“实际参数”。形参不是实际存在变量,又称虚拟变量。
2、目的不同:实参可以是常量、变量或表达式,无论实参是何种类型的量,在进行函数调用时,都必须具有确定的值,以便把这些值传送给形参。
需要注意当形参和实参不是指针类型时,在该函数运行时,形参和实参是不同的变量,他们在内存中位于不同的位置,形参将实参的内容复制一份,在该函数运行结束的时候形参被释放,而实参内容不会改变。
C语言中实参与行参是怎么回事
形参:全称为"形式参数"是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传如的参数.
实参:全称为"实际参数"是在调用时传递个该函数的参数.
形参和实参的类型必须要一致,或者要符合隐含转换规则,
当形参和实参不是指针类型时,在该函数运行时,形参和实参是不同的变量,他们在内存中位于不同的位置,形参将实参的内容复制一份,在该函数运行结束的时候形参被释放,
而实参内容不会改变.
而如果函数的参数是指针类型变量,在调用该函数的过程
中,传个函数的是实参的地址,在函数体内部使用的也是实参的地址,即使用的就是实参本身.所以在函数体内部可以改变实参的值.
给你一个很简单的例子:
int
f(int
b)
/*b为形参*/
{
return
b;}
main()
{int
a=1;
printf("%d",f(a));/*a为实参*/
}
C语言实参的概念
形参定义函数时用到的就相当于接口,实参就是你实际调用的时候用到的参数
比如说我定义一个函数max(int x,int y)
然后在主程序中调用它
a=max(a,b);
a,b是主函数中的变量
x,y是形参,a,b是实参,在调用中,把实参的值赋给形参。所以一般调用,你在函数中改变形参的值并不影响实参的值,以此来保护实参被函数改变,当然如果你需要改变实参的话可以用指针。