Auteur Sujet: problème avec le type byte  (Lu 2196 fois)

Babazou38

  • Newbie
  • *
  • Messages: 6
    • Voir le profil
problème avec le type byte
« le: août 05, 2023, 03:08:45 pm »
Bonjour à tous,

lorsque je déclare une variable de type 'byte', l'IDE ne le colorise pas mais le compilateur ne dit rien. Par contre si cette déclaration a lieu à l'intérieur d'une définition de classe, le compilateur donne une erreur.

Est-ce que quelqu'un a déjà eu ce problème ?

Jean



Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 1691
    • Voir le profil
Re : problème avec le type byte
« Réponse #1 le: août 05, 2023, 03:56:33 pm »
Bonjour,

Sur mon IDE c'est colorié (v1.8.19)

Citer
Par contre si cette déclaration a lieu à l'intérieur d'une définition de classe, le compilateur donne une erreur.

Et c'est normal si la classe est dans un .h ou un .cpp.

En effet, lorsque l'IDE demande la compilation d'un .ino, ce dernier passe par un pré-processeur spécifique qui inclus en tête le fichier Arduino.h. De plus, ce pré-processeur liste les fonctions présentes dans le .ino et ajoute en tête pour le compilateur la déclaration des prototypes correspondant, ce qui permet d'appeler des fonctions définies après dans le source (ce qui n'est pas possible en C/C++ sinon et produit une erreur de compilation).

En revanche, si l'IDE demande la compilation d'un .cpp, le pré-processeur n'est pas passé et on se retrouve en C/C++ ordinaire.

Pour régler ce problème, il suffit d'ajouter un

#include <Arduino.h>

Dans votre .h avant la déclaration de classe
Cordialement

Babazou38

  • Newbie
  • *
  • Messages: 6
    • Voir le profil
Re : problème avec le type byte
« Réponse #2 le: août 05, 2023, 04:17:35 pm »
Merci Jean-Luc,

effectivement la déclaration de ma classe était dans un .h !

Mon IDE est 2.1.1  ...

Bien cordialement
jean