Les nombres

Différents types de nombre

Dans le langage Arduino, les types de toutes les variables et constantes doivent être définis dans le code et ne peuvent plus être modifiés pendant l’exécution.

Cela permet notamment d’optimiser la gestion de la mémoire (seulement 2ko pour un Arduino UNO !).

Pour les nombres, il existe différents types :

Nom du type Plage de valeur Occupation mémoire (octets)
byte 0 à 255 1
int – 32 768 à 32 767 2 (UNO) 4 (DUE)
unsigned int 0 à 65535 (216-1) 2 (UNO) 4 (DUE)
long -2 147 483 648 à 2 147 483 647 4
unsigned long 0 à 4 294 967 295 (232-1) 4
float 3.4 x 1038 à -3.4 x 1038 4
double -1.7 x 10308 à 1.7 x 10308 4 (UNO) 8 (DUE)

Déclaration

Variables

globale

Une variable peut être déclarée au niveau global (en dehors de toute fonction) : elle sera alors accessible à toutes les fonctions du programme :

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 :

 

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) :

ou encore (mais il est conseillé d’éviter cette forme) :

  • à l’intérieur du code, en chiffres :

De plus, il est possible d’utiliser plusieurs systèmes de numération (pour les entiers) grâce à des préfixes (aucun, B ,  , ou 0x ) :

 

Et enfin on peut imposer un type d’entier différent de celui par défaut ( int ) grâce à des suffixes ( U  ou u  et L  ou l) :


Affichage

Méthodes print()et println()

Pour afficher un nombre (moniteur série, écran LCD, …) ou pour l’écrire dans un fichier (carte SD, …), on peut utiliser les fonctions print() et  println()  (présentes dans la bibliothèque Serial notamment).

Les fonctions  print()  et  println()  permettent aussi de choisir le système de numération :

 

 

Vous aimerez aussi...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

code