C语言中什么叫做实际参数,什么叫做形式参数?
5个回答
展开全部
实际调用时给的参数是实际参数,定义时的参数是形式参数。举个例。函数定义如下:
void prin(int a,int b)
{
printf("a=%d, b=%d",a,b);
}
void main()
{
int x=1,y=8;
prin(x,y);
prin(2,4);
}
其中,第一个prin函数的定义中,a,b就是形式参数。
main函数中调用prin函数时,x,y,2, 4 都是实际参数。
望采纳。
更多追问追答
追问
那实际参数和形式参数各有什么用呢
追答
兄弟,你是学什么专业的?
展开全部
1……f(int b)
2……{…… } //b是实际参数,1~2行是它的作用范围
3……int main()
4……{
5…… int a; //定义一个变量a,作用范围是3~7
6…… f(a); //这里调用上面的 f() 函数,并且把实际参数 a 的值赋值给形式参数 b
7……}
实际参数和形式参数是相对而言的,形式参数就是形式上的参数,一般作用范围局限在定义的函数内,通常用来复制实际参数的值
希望对你有帮助
2……{…… } //b是实际参数,1~2行是它的作用范围
3……int main()
4……{
5…… int a; //定义一个变量a,作用范围是3~7
6…… f(a); //这里调用上面的 f() 函数,并且把实际参数 a 的值赋值给形式参数 b
7……}
实际参数和形式参数是相对而言的,形式参数就是形式上的参数,一般作用范围局限在定义的函数内,通常用来复制实际参数的值
希望对你有帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
形式参数又叫形参,就是用来函数接收传递进来的数据的变量,比如:
int
test(int
a,
int
b)
void
main()
{
int
x,
int
y;
test(x,
y);
}
a、b是形参,x和y是实参。
int
test(int
a,
int
b)
void
main()
{
int
x,
int
y;
test(x,
y);
}
a、b是形参,x和y是实参。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
函数调用时需注意的东西。函数定义中函数首部中的参数叫形参,调用函数时使用的参数叫实参。C函数调用采用“值传递”,比如有函数:
int
max(int
x,int
y)
{if(x>y)
return
x;
return
y;
}
在调用该函数时,有max(a,b);则该调用只把a(实参)的值赋给x(形参),把b(实参)的值赋给y(形参)。函数中对x,y的任何动作不改变a,b的值。值得注意的是如果用指针作参数,虽然符合上面原则,但对形参指向的数据的更改会影响实参指向数据的值。如函数:
int
swap(int
*x.int
*y)/*交换*/
{int
temp=*x;
*x=*y;
*y=temp;
}
则调用后swap第一个实参指向数据变为原第二个实参指向的数据,原第二个实参指向的数据变为第一个实参指向数据(因为指针的值是其指向数据的地址,该形参和实参指向同一个内存地址,形参对该地址存储值的改变,当然会影响到实参指向的地址存储值),但两指针指向(指向为其值)不变(上面的原则)。
int
max(int
x,int
y)
{if(x>y)
return
x;
return
y;
}
在调用该函数时,有max(a,b);则该调用只把a(实参)的值赋给x(形参),把b(实参)的值赋给y(形参)。函数中对x,y的任何动作不改变a,b的值。值得注意的是如果用指针作参数,虽然符合上面原则,但对形参指向的数据的更改会影响实参指向数据的值。如函数:
int
swap(int
*x.int
*y)/*交换*/
{int
temp=*x;
*x=*y;
*y=temp;
}
则调用后swap第一个实参指向数据变为原第二个实参指向的数据,原第二个实参指向的数据变为第一个实参指向数据(因为指针的值是其指向数据的地址,该形参和实参指向同一个内存地址,形参对该地址存储值的改变,当然会影响到实参指向的地址存储值),但两指针指向(指向为其值)不变(上面的原则)。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
形参是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的参数.
实参是在调用时传递给函数的参数,即传递给被调用函数的值.
例如:
int main()
{
void method(int i); // i 是一个形参
......
int a = 10;
method(a); // a 是一个实参
return 0;
}
void method(int i) // i 是一个形参
{
return;
}
实参是在调用时传递给函数的参数,即传递给被调用函数的值.
例如:
int main()
{
void method(int i); // i 是一个形参
......
int a = 10;
method(a); // a 是一个实参
return 0;
}
void method(int i) // i 是一个形参
{
return;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询