c++中的形参和实参的区别是什么?
3个回答
2022-11-08 · 百度认证:IT168官方账号,优质数码领域创作者
关注
展开全部
有以下区别:
1、主体不同:实参在调用有参函数时,函数名后面括号中的参数为“实际参数”。形参不是实际存在变量,又称虚拟变量。
2、目的不同:实参可以是常量、变量或表达式,无论实参是何种类型的量,在进行函数调用时,都必须具有确定的值,以便把这些值传送给形参。
需要注意当形参和实参不是指针类型时,在该函数运行时,形参和实参是不同的变量,他们在内存中位于不同的位置,形参将实参的内容复制一份,在该函数运行结束的时候形参被释放,而实参内容不会改变。
1、主体不同:实参在调用有参函数时,函数名后面括号中的参数为“实际参数”。形参不是实际存在变量,又称虚拟变量。
2、目的不同:实参可以是常量、变量或表达式,无论实参是何种类型的量,在进行函数调用时,都必须具有确定的值,以便把这些值传送给形参。
需要注意当形参和实参不是指针类型时,在该函数运行时,形参和实参是不同的变量,他们在内存中位于不同的位置,形参将实参的内容复制一份,在该函数运行结束的时候形参被释放,而实参内容不会改变。
展开全部
实参和形参被分配的地址不同。
如果不用指针或者引用,实参只能向形参里面传递东西(值),就好比上面的举例,实参的东西能拷贝一份搬到形参里面,而形参里面的东西(值)被改变却不会反向传递,就是形参里面的东西不会覆盖实参的东西(值);
简单地说就是实参和形参操作的地址不同,如果需要得到改变的值,一般都是用return返回值,如果要改变实参都会使用指针或者引用来实现,这样操纵地址使得实参操纵起来更加的方便;
形参的作用域仅限于定义的函数内,一旦出了这个函数,定义的形参就会被释放掉。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
【1】形参并没有实际的意义,他是定义该参数的变量域(或类型)。
【2】实参是形参的一种特例,他是变量域中的一个有效值。
例如:
y = 5 - x(1<x<5)
x就是形参,而(1,5)就是这个形参的取值范围,而从1到5的开区间任何一个实数都可以是实参,
即实参是确定的值,而形参是表示实参的取值范围
又例如:
func a(int b){
}
b就是形式参数,b的取值范围是“整数”,所以任何整数都可以是该函数的实参
【2】实参是形参的一种特例,他是变量域中的一个有效值。
例如:
y = 5 - x(1<x<5)
x就是形参,而(1,5)就是这个形参的取值范围,而从1到5的开区间任何一个实数都可以是实参,
即实参是确定的值,而形参是表示实参的取值范围
又例如:
func a(int b){
}
b就是形式参数,b的取值范围是“整数”,所以任何整数都可以是该函数的实参
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询