- #define is a useful C component that allows the programmer to give a name to a constant value before the program is compiled.
- The compiler will replace references to these constants with the defined value at compile time..
- Defined constants in arduino don't take up any program memory space on the chip.
- a constant name that had been #defined is included in some other constant or variable name. In that case the text would be replaced by the #defined number (or text).
In general, the const keyword is preferred for defining constants and should be used instead of #define.
Arduino defines have the same syntax as C defines:
#define constantName value
Note that the # is necessary.
#define ledPin 3// The compiler will replace any mention of ledPin with the value 3 at compile time. Tip There is no semicolon after the #define statement. If you include one, the compiler will throw cryptic errors further down the page.
#define ledPin 3; // this is an errorSimilarly, including an equal sign after the #define statement will also generate a cryptic compiler error further down the page.
#define ledPin = 3 // this is also an error