Les variables
Une variable est une entité symbolique (valeur numérique, chaîne de caractères, référence, etc.) dont la valeur est susceptible d’être modifiée en cours d’exécution du programme.
Déclaration
Une variable doit être explicitement déclarée, et son type est fixe :
int a;
Lors de sa déclaration, on peut lui affecter une valeur :
int a = 2;
Attention : avant de lui en affecter une, la variable aura une valeur indéfinie, c’est à dire la valeur de ce qui se trouve à l’adresse mémoire à ce moment là !
Modification
Une fois la variable déclarée, on peut lui affecter une valeur :
a = 8;
ATTENTION : on ne peut pas changer sont type. L’instruction
a = 8.1;provoquera une erreur ou un comportement inattendu !Par exemple, sur un Arduino UNO, les instructions :
int a = 8; a = 8.1; Serial.println(a);Provoquera l’affichage :
8La constante
8.1est automatiquement convertie enint(8.1)avant affectation à la variablea.
ou bien modifier la valeur qu’elle possède déjà :
a++; \\ incrémentation, équivalent à : a = a+1;
Voir aussi les opérateurs composés (Compound Operators)
Portée
variable globale
Une variable peut être déclarée au niveau global (en dehors de toute fonction, le plus souvent dans la partie déclarative du programme) : elle sera alors accessible à toutes les fonctions du programme :
long val; // "val" est le nom de la variable, utilisable dans tout le programme byte i = 2; // le compilateur affecte à cette variable la valeur 2 dès sa déclaration
variable locale
Une variable locale (définie à l’intérieur d’une fonction) ne sera en revanche accessible que depuis l’intérieur de cette fonction :
void setup() {
float z = val*i; // cette variable z sera inconnue en dehors de la fonction setup() elle est locale
val = long(z*100) // la variable val n'a pas besoin d'être définie à nouveau : elle est globale
}
Constantes
Une constante, à la différence d’une variable, ne peut plus être modifiée après sa déclaration.
Il y a 3 façons de déclarer une constante :
- au niveau global (début du code, dans la partie déclarative du programme) avec le mot
const:
const int a = 148;
- à l’intérieur du code, en chiffres ou en chaîne de caractères :
int b; // b est une variable b = 97; // 97 est une constante ... qui ne porte pas de nom
- ou encore sous la forme d’une directive de compilation :
#define a 148 // pas de '=" ni de point-virgule !
ATTENTION, dans ce cas ci, il s’agit d’une directive de compilation qui demande au compilateur de remplacer dans le code toutes les références à
apar la constante148.
