形参是在调用函数里面的,实参是在主函数里面的, 这个说法对吗?
#include <stdio.h>
int getGirth(int a,int b,int c)
{
if( (a+b)<=c || (a+c)<=b || (b+c)<=a ) //判断是否为三角形
{
printf("不构成三角形\n");
return 0;
}
else
{
int cirf = a + b + c ; //计算三角形周长
int p = a + c;
return cirf;
}
}
int main()
{
/* 定义三角形三边长 */
int a, b, c;
a = 3;
b = 4;
c = 5;
printf("三角形的周长是:%d\n", getGirth(a,b,c)); //调用周长函数
return 0;
}
拿这段代码讲: 在自定义函数里面的a,b,c为形参。
在调用自定义函数的时候,给a,b,c赋予了确定的值,在调用该函数时,a,b,c就为实参了
形参只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。
实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。因此应预先用赋值等办法使实参获得确定值。