Bonjour.

Je programme sur un arduino (qu'importe)

dans mon main.cpp je fais ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
#define MA_CONST 5
#include "mauditheader.h"
 
void main()
{
  print(MA_CONST); // Je m'attends à lire 5 (lire la suite)
}
et dans mon mauditheader.h je met ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
#ifndef MA_CONST
#define MA_CONST 10
#endif
Ce que je ne comprends pas, c'est que je fais le #define dans mon fichier source AVANT de faire le include.
Et pourtant mon header lui pense que je n'ai jamais fais de #define MA_CONST; je ne comprends vraiment pas pourquoi...

du coup : print(MA_CONST); m'affiche 10 au lieu de m'afficher 5

pourriez vous s'il vous plait m'expliquer pourquoi et comment faire?