L'essentiel du langage C

Analyser la portée d'une variable

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Appréhendez les notions de déclaration globale ou de déclaration locale d'une variable. Voyez également la durée de vie d'une variable dans un programme, avec une visualisation en mode debug.
05:54

Transcription

Je vais vous parler de la notion très importante de la portée d'une fonction. Donc pour cela, j'ai écrit un programme avec deux fonctions qui n'ont aucun paramètre de sortie, aucun paramètre d'entrée qui sont des fonctions qui sont additionner et soustraire que j'ai déclaré dans la partie prototype car, comme je l'ai dit j'ai, l'habitude d'aller mettre mes fonctions après le « main » . Donc j'ai déclaré aussi deux variables globales que j'ai initialisées à zéro et puis je fais appel à l'intérieur de mon « main » à la fonction addition et fonction soustraire. Vous voyez une petite flèche jaune qui est ici, alors le fichier contrairement au travail qu'on a effectué d'habitude, là vous êtes obligés de construire un projet. Alors si votre abonnement le permet vous pouvez le télécharger, sinon vous pouvez le créer vous-même et insérer le fichier présent. Pour se mettre en « mode debug » , rien plus simple, vous mettez exécuter jusqu'au curseur donc là vous placez ici « exécuter jusqu'au curseur » vous êtes sur le jaune. Allant jeter un petit coup d'œil au niveau des fonctions. Donc « fonction additionner » , donc je vais additionner deux variables, donc ses variables en fait je les ai déclarées et je les ai initialisées à la valeur 15 et 25. Donc le but ici n'est pas que l'utilisateur entre les valeurs, j'ai entré moi-même les valeurs endure dans le programme puisque ce que l'on veut montrer ici c'est la portée, donc seulement qui est un peu de ce qui est rentré. Donc voilà. Maintenant, si je regarde après la fonction soustraire, vous voyez une chose déjà qui est flagrante c'est que j'ai deux fois la même chose, à part l'initialisation qui est différente. Alors c'est ce que je vous disais précédemment, la portée d'une variable se cantonne à la fonction. Donc vous pouvez avoir plusieurs fois le même nom à l'intérieur de fonctions séparées et non pas d'une même fonction, puisque de toute façon il n'y a pas de corrélation entre les deux. Donc pour s'en persuader nous passons en « mode debug » . Pour ça nous faisons « fenêtre de débogage » où nous mettons « témoins » , moi j'ai triché un petit peu, j'ai déjà rentré « maVariable1 » , « maVariable2 » et « monResultat » , mais rien ne vous empêche, vous voyez, vous cliquez ici, vous rentrez le nom de votre variable et vous aurez le résultat. En face, voyez bien nous somme dans la fonction « main » , le débogueur vous dit bien que de toute façon vos variables sont hors de porté et il n'y a pas de problème. Donc à partir de là nous allons garder cette fenêtre à côté de nous, et puis nous allons faire, alors si le curseur veut bien l'on mettre bon tant pis, donc ça veut dire ici ligne suivante. Ça y est, ça a apparaît plus tard que jamais et à l'intérieur de la ligne suivante après vous passez dans entrer dans cette fonction. Et là ! Tatannnn ! Gros miracle ! Que voit-on arrivé ? « maVariabele1 » , « maVariiable2 » et « monResultat » avec quand même des résultats un petit peu folklorique, sauf pour « monResultat » qui a l'air homogène, c'est-à-dire que puisque j'ai déclaré ces variables et que je ne les ai pas encore initialisées, cela montre en plus l'intérêt d'initialiser les variables, c'est que là mes variables viennent d'hériter de valeur qui traîner d'une autre exécution d'un autre programme, donc voilà, à partir de là, je vais faire ligne suivante et vous allez voir que ça va s'initialiser. Voilà « maVariable1 » s'est passée à 15, « maVariable2 » vient de passer à 25 et « monResultat » Op, ah lui il est passé à 0 c'est normale, mais il va vite repasser à 40 parce que 15+25 = 40 et après j'effectue le « printf » . Donc cela nous ne le verrons pas tout suite, nous n'allons pas rentrer dans la fonction « printf » ça strictement qui est à l'intérêt et nous allons sortir. Là je fais bien attention, je vais repasser sur entrer dans la fonction soustraire cette fois-ci. Alors vous voyez déjà une chose c'est que nos variables c'est tout c'est fini, on a perdu la valeur sans persuader, il suffit de rentrer dans la fonction. On entre dans la fonction et là on retrouve vu qu'elles avaient le même nom, les valeurs précédentes, il n'y a pas eu l'intervention d'un autre programme pour venir écraser ces valeurs-là, donc on retrouve les anciennes valeurs de ma fonction précédente. Là je vais faire du ligne suivante. Je vais les initialiser à 10, à 20, à 0 et je vais faire ma soustraction -10. Voilà et une fois que j'ai rentré tout ça je vais sortir et me voici en dehors du contexte. Donc tout ça pour vous montrer que la portée d'une variable vraiment se cantonne à la fonction. Maintenant, si nous voulons passer à l'exécution, nous passons comme ceci, nous construisons et nous voyons donc le résultat que nous avions espéré. Ce n'est pas parce que vous avez perdu le contenu d'une variable qu'elle ne s'affiche pas, on a fait un « print » entre les deux à l'intérieur de cette fonction, nous aurions voulu faire un « print » à l'extérieur là ça n'arrive pas à fonctionner.

L'essentiel du langage C

Comprenez les concepts de base du langage C. Développez de simples applications en mode console, afin de comprendre les rouages d’un des langages les plus utilisés au monde.

7h51 (98 vidéos)
Aucun commentaire n´est disponible actuellement
Logiciel :
Spécial abonnés
Date de parution :12 janv. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !