当口头谈论方法时,我从不确定是否应该使用参数或参数或其他词。不管怎样,其他人都知道我的意思,但什么是正确的,这些术语的历史是什么?

我是一名c#程序员,但我也想知道人们是否在不同的语言中使用不同的术语。

声明一下,我是自学的,没有计算机科学的背景。(请不要让我去读《代码完成》,因为我这么做是为了让那些还没有史蒂夫·麦康奈尔这本了不起的书的人受益。)

总结

普遍的共识似乎是,在团队环境中可以互换使用这些术语。除非你在定义精确的术语;然后你也可以使用“正式参数/参数”和“实际参数/参数”来消除歧义。


当前回答

在参数(计算机编程)-维基百科中有完美的解释

宽泛地说,形参是一种类型,实参是一个实例。

在函数定义f(x) = x*x中,变量x是一个参数;在函数调用f(2)中,值' ' 2是函数的实参。

和参数-维基百科

在计算机编程中,通常使用两种参数的概念,它们被称为参数和实参,或者更正式地称为形式参数和实际参数。

例如,在函数的定义中如

y = f(x) = x + 2,

X是定义函数的形式参数(参数)。

当函数对给定值求值时,例如

F(3):或者,y = F (3) = 3 + 2 = 5,

被定义的函数计算的实际形参(实参);它是一个给定的值(实际值),取代了定义函数的形式参数。(在日常使用中,术语parameter和argument可能会无意中互换,从而被错误地使用。)

其他回答

一般来说,术语parameter和argument可以互换使用,表示传递到函数中的信息。

然而,从函数的角度来看:

形参是函数定义中括号内列出的变量。 实参是调用函数时发送给函数的值。

它们在C语言中的用法没有太大的区别,这两个术语都被使用了 在实践中。 大多数参数通常与函数一起使用。随函数调用语句传递的值称为实参,形参是复制函数定义中的值的变量(称为形式形参)。

int main ()
{
   /* local variable definition */
   int a = 100;
   int b = 200;
   int ret;

   /* calling a function to get max value */
   ret = max(a, b);

   printf( "Max value is : %d\n", ret );

   return 0;
}

/* function returning the max between two numbers */
int max(int num1, int num2) 
{
   /* local variable declaration */
   int result;

   if (num1 > num2)
      result = num1;
   else
      result = num2;

   return result; 
}

在上面的代码中,num1和num2是形式参数,a和b是实际参数。

这个例子可能会有所帮助。

int main () {
   int x = 5; 
   int y = 4;

   sum(x, y); // **x and y are arguments**
}

int sum(int one, int two) { // **one and two are parameters**
   return one + two;
}

Parameter是函数声明中的变量。

参数是传递给函数的这个变量的实际值。

是的!参数和参数有不同的含义,可以简单解释如下:

函数参数是函数定义中列出的名称。

函数实参是传递给函数(并由函数接收)的实值。