En langage C, les paramètres réels sont transmis à la valeur de la fonction, tandis que les paramètres formels reçoivent les paramètres de la fonction. Il existe la relation suivante entre eux : Correspondance de type : le type de paramètre formel doit être compatible avec le type de paramètre réel. Correspondance quantitative : le nombre de paramètres formels doit être égal au nombre de paramètres réels. Passage par valeur (par défaut) : la valeur réelle du paramètre est transmise au paramètre formel, et la modification du paramètre formel n'affecte pas le paramètre réel ; Passage d'adresse (facultatif) : l'utilisation d'un paramètre réel de pointeur ou de tableau peut réaliser un transfert d'adresse et une modification le paramètre formel peut également modifier le paramètre réel ; Allocation de mémoire : les paramètres formels se voient attribuer de la mémoire sur la pile et les valeurs réelles des paramètres sont copiées dans la mémoire des paramètres formels.
La relation entre les paramètres réels et les paramètres formels en langage C
En langage C, les paramètres réels et les paramètres formels jouent des rôles différents, mais il existe une relation étroite entre eux.
Paramètres réels
Paramètres formels
Relation
La relation entre les paramètres réels et les paramètres formels est la suivante :
Exemple
Par exemple, considérons la fonction suivante :
void swap(int *a, int *b) { int temp = *a; *a = *b; *b = temp; }
Dans cet exemple, les paramètres réels sont deux variables entières au moment de l'appel de la fonction. Les paramètres formelsa
和b
sont deux pointeurs vers des entiers. Lorsque la fonction est appelée, les valeurs des paramètres réels sont copiées dans la mémoire des paramètres formels. Les opérations dans le corps de la fonction modifient les valeurs des paramètres formels, modifiant ainsi les valeurs des paramètres réels.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!