#define

Description

L'instruction #define est un élément très utile du langage C qui permet au programmeur de donner un nom à une constante avant que le programme soit compilé (pour info : en C, les instructions précédés du # sont des instructions utilisées par le pré-compilateur). Les constantes ainsi définie dans le langage Arduino ne prennent aucune place supplémentaire en mémoire dans le microcontrôleur. Le compilateur remplacera les références à ces constantes par la valeur définie au moment de la compilation.

Ceci peut cependant avoir quelques effets indésirables, si par exemple, un nom de constante qui a été défini par #define est inclus dans d'autres constantes ou nom de variable. Dans ce cas, le texte de ces constantes ou de ces variables sera remplacé par la valeur définie avec #define.

D'une manière générale, le mot clé const est préférable pour définir les constantes et doit être utilisé plutôt que #défine.

Syntaxe

L'instruction Arduino #define a la même syntaxe que le #define du langage C :

#define constantName value

Noter que le signe # est nécessaire. En langage C, les instructions précédées par # sont des instructions utilisées par le pré-compilateur.

Exemple

// Le compilateur remplacera tout texte LED_PIN avec la valeur 3 au moment de la compilation #define LED_PIN 3 void setup() { pinMode(LED_PIN, OUTPUT); // Le compilateur remplacera LED_PIN avec 3 } void loop() { digitalWrite(LED_PIN, HIGH); // Le compilateur remplacera LED_PIN avec 3 delay(1000); digitalWrite(LED_PIN, LOW); // Le compilateur remplacera LED_PIN avec 3 delay(1000); }

Conseils

Il n'y a pas de point-virgule après l'instruction #define (il en est de même pour toutes les instructions de pré-compilation débutant par #). Si vous en incluez un, le compilateur vous donnera des messages d'erreur énigmatiques dans la console du logiciel Arduino lors de la compilation.

#define LED_PIN 3; // ceci est une erreur - ne pas mettre de ;

De la même façon, inclure un signe égal après l'instruction #define vous donnera des messages d'erreur énigmatiques dans la console du logiciel Arduino lors de la compilation.

#define LED_PIN = 3 // ceci est également une erreur

ARDUINO BUY RECOMMENDATION

Arduino UNO R3
Arduino Starter Kit
Disclosure: Some links in this section are Amazon affiliate links. If you make a purchase through these links, we may earn a commission at no extra cost to you.
Additionally, some links direct to products from our own brand, DIYables.

※ OUR MESSAGES