web-dev-qa-db-fra.com

Différence entre paramètre et argument

Existe-t-il une différence entre un "paramètre" et un "argument", ou sont-ils simplement des synonymes?

115
TheDarkIn1978

L'argument est souvent utilisé dans le sens de argument réel vs paramètre formel.

Le paramètre formel correspond à ce qui est indiqué dans la déclaration/définition/prototype de la fonction, tandis que le argument réel correspond à ce qui est transmis lors de l'appel de la fonction - une instance d'un paramètre formel, si vous voulez.

Cela dit, ils sont souvent utilisés de manière interchangeable, leur utilisation exacte dépendant de différents langages de programmation et de leurs communautés. Par exemple, j'ai aussi entendu paramètre actuel etc.

Donc ici, x et y seraient des paramètres formels:

int foo(int x, int y) {
    ...
}

Considérant qu'ici, dans l'appel de fonction, 5 et z sont les arguments réels:

foo(5, z);
200
danlei

Généralement, les paramètres sont ceux utilisés dans la fonction et les arguments sont les valeurs transmises lors de l'appel de la fonction. (Sauf si vous adoptez le point de vue opposé - Wikipedia mentionne des conventions alternatives lors de la discussion de paramètres et arguments ).

double sqrt(double x)
{
    ...
    return x;
}

void other(void)
{
     double two = sqrt(2.0);
}

Sous ma thèse, x est le paramètre à sqrt() et 2.0 est l'argument.

Les termes sont souvent utilisés au moins de manière interchangeable.

19
Jonathan Leffler

Ils sont souvent utilisés de manière interchangeable dans le texte, mais dans la plupart des normes, la distinction est qu'un argument est une expression passée à une fonction, où un paramètre est une référence déclarée dans une déclaration de fonction.

5
nas

Les arguments et les paramètres sont différents en ce sens que les paramètres sont utilisés pour différentes valeurs dans le programme et que les arguments sont transmis à la même valeur dans le programme afin qu'ils soient utilisés dans c ++. Mais pas de différence en c. Il en va de même pour les arguments et les paramètres de c.

0
Suranan Ashwini