c语言中什么时候实参和形参应该不一样?
10个回答
展开全部
你的问题的意思不明确啊。简单为你说下吧。
形参是定义函数时的参数,目的是用来接收调用函数时的实参值。实参是调用函数时的参数,为函数对应的形参提供明确的数值或地址。函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。
形参和实参可以相同也可以不相同,但实参和形参在数量上,类型上,顺序上应严格一致。
例如:
int process(int a ,double b) //a,b为形参,没有具体数值
{
b=a*2;
return b;
}
int main()
{
int a=1 ;
double b;
process(a,b); //a,b为实参,a具体的值由main()中定义初始化的a对应传入,b由process的函数体计算可得。
printf("%f",b);
}
形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。
形参是定义函数时的参数,目的是用来接收调用函数时的实参值。实参是调用函数时的参数,为函数对应的形参提供明确的数值或地址。函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。
形参和实参可以相同也可以不相同,但实参和形参在数量上,类型上,顺序上应严格一致。
例如:
int process(int a ,double b) //a,b为形参,没有具体数值
{
b=a*2;
return b;
}
int main()
{
int a=1 ;
double b;
process(a,b); //a,b为实参,a具体的值由main()中定义初始化的a对应传入,b由process的函数体计算可得。
printf("%f",b);
}
形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。
2015-06-26
展开全部
形参就是你定义的函数中的一个参数,可以在函数中使用
例如
void Print(int a,char c)
{
printf("%d%c",a,c);
}
你可以在函数中使用它们
而他们的值是什么呢? 就是实参了
在你调用函数的时候
int x = 10; char ch = 's'
Print(x,ch);
相当于 a = x c = ch 也就是把实参的值赋给形参,然后对形参进行操作
名字可以随便取,可以相同也可以不同,这个无所谓,但由于是赋值操作他们必须属于同一个数据类型。
例如
void Print(int a,char c)
{
printf("%d%c",a,c);
}
你可以在函数中使用它们
而他们的值是什么呢? 就是实参了
在你调用函数的时候
int x = 10; char ch = 's'
Print(x,ch);
相当于 a = x c = ch 也就是把实参的值赋给形参,然后对形参进行操作
名字可以随便取,可以相同也可以不同,这个无所谓,但由于是赋值操作他们必须属于同一个数据类型。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
形参就是你定义的函数中的一个参数,可以在函数中使用
例如
void Print(int a,char c)
{
printf("%d%c",a,c);
}
你可以在函数中使用它们
而他们的值是什么呢? 就是实参了
在你调用函数的时候
int x = 10; char ch = 's'
Print(x,ch);
相当于 a = x c = ch 也就是把实参的值赋给形参,然后对形参进行操作
名字可以随便取,可以相同也可以不同,这个无所谓,但由于是赋值操作他们必须属于同一个数据类型
不清楚追问我
例如
void Print(int a,char c)
{
printf("%d%c",a,c);
}
你可以在函数中使用它们
而他们的值是什么呢? 就是实参了
在你调用函数的时候
int x = 10; char ch = 's'
Print(x,ch);
相当于 a = x c = ch 也就是把实参的值赋给形参,然后对形参进行操作
名字可以随便取,可以相同也可以不同,这个无所谓,但由于是赋值操作他们必须属于同一个数据类型
不清楚追问我
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-02-20
展开全部
实参是系统分配存储单元的实际参数,形参是函数中形式参数,不分配固定存储单元,可以说是用完就消失(如果不是static等特殊一些的类型),它们没什么关联,所用字母一不一致都可以的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C语言函数使用值传递参数时,
形参和实参是不同的两个变量。
比如:
fun(int x);
{
char a = 'a';
fun(a);
}
实参a是char型的,形参x是int
型的另一个变量。它们有各自的
存储空间地址,所以不同。
形参和实参是不同的两个变量。
比如:
fun(int x);
{
char a = 'a';
fun(a);
}
实参a是char型的,形参x是int
型的另一个变量。它们有各自的
存储空间地址,所以不同。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询