Leçon 10 : passage par valeur et portée
Dans la leçon précédente, on a appris à transmettre des valeurs à une fonction — mais que reçoit-elle réellement ? En C, chaque argument est transmis par valeur : la fonction reçoit une copie, et modifier la copie ne touche jamais l'original. C'est pourquoi une fonction swap « innocente » qui échang
Transmettre une variable à une fonction, c'est comme envoyer une photocopie d'un document : celui qui reçoit la copie peut griffonner dessus autant qu'il veut — ton document original reste parfaitement propre.
- passage par valeur
- La méthode de transmission de C : la fonction reçoit une copie de la valeur, pas la variable elle-même.
- copie
- La valeur placée dans le paramètre lors de l'appel. La modifier n'affecte pas la variable de l'appelant.
- portée (scope)
- La zone du code où une variable existe et est accessible — généralement le bloc où elle a été définie.
- variable locale
- Une variable définie à l'intérieur d'une fonction ou d'un bloc : naît à l'entrée du bloc, disparaît à sa sortie.
- variable globale
- Une variable définie hors de toute fonction et accessible depuis toutes. Elle existe, mais il vaut mieux l'éviter — difficile de suivre qui la modifie.