Main

Référence : Langage Arduino : [ Mini | Standard | Etendue | Maxi ] Librairies : [ Vue d'ensemble | Synthèse ] Infos : [ Comparaison | Changements ]

La portée des variables


Description

Les variables en langage de programmation C, sur lequel Arduino est basé, a une propriété appelée portée des variables. Sur ce point, le langage C est différent des langages tels que le Basic où toutes les variables sont des variables globales.

Une variable globale est une variable qui peut être "vue" et utilisée par n'importe quelle fonction dans un programme. Les variables locales ne sont visibles que dans la fonction dans laquelle elles ont été déclarée. Dans le langage Arduino, toute variable déclarée en dehors d'une fonction (telle que setup() ou loop() ), au niveau de l'entête du programme par exemple, est une variable globale.

Quand les programmes commencent à être plus grands et plus complexes, les variables locales sont très utiles pour s'assurer que seule une fonction donnée a accès à ses propres variables. Ceci prévient les erreurs de programmation quand une fonction, par inadvertance, modifie une variable utilisée par une autre fonction.

Il est est également pratique de déclarer et d'initialiser une variable à l'intérieur d'une boucle for. ceci crée une variable qui ne sera accessible uniquement à l'intérieur des accolades { } de la boucle for.

Exemple


int gPWMval;  // n'importe quelle fonction pourra voir cette variable qui est globale

void setup()
{
  // ...
}

void loop()
{
  int i;    // la variable i n'est visible qu'à l'intérieur de la boucle
  float f;  // la variable f n'est visible qu'à l'intérieur de la boucle
  // ...

  for (int j = 0; j <100; j++){
  // la variable j n'est accessible qu'à l'intérieur de la boucle
  }

}
 

Voir également

Commentaires utilisateurs

Aucun commentaire


Page d'accueil de la référence Arduino en français

Corrections, suggestions et nouvelle documentation peuvent être postées sur le Forum Arduino ou à l'adresse suivante : support_at_mon-club-elec_point_fr

Le texte original de la référence Arduino est sous licence Creative Commons Attribution-ShareAlike 3.0 . Les exemples de code dans la référence sont dans le domaine public.

La présente traduction française commentée a été réalisée par Xavier HINAULT (2010-2012) (www.mon-club-elec.fr) et est sous licence Creative Commons Attribution-ShareAlike 3.0.