解説
#defineはC++の便利なコンポーネントで、プログラムがコンパイルされる前に定数値に名前を付けることができます。
arduinoで定義された定数は、チップ上のプログラムメモリ空間を占有しません。
コンパイラは、コンパイル時にこれらの定数への参照を定義された値に置き換えます。
しかし、これには望ましくない副作用があります。
例えば、#definedされた定数名が、他の定数や変数名に含まれている場合です。
その場合、テキストは#definedの数字(またはテキスト)に置き換えられます。
一般的に、定数を定義するには、#defineの代わりにconstキーワードを使用することをお勧めします。
構文
#define constantName value
パラメータ
constantName:定義するマクロの名前です。
value:マクロに割り当てる値。
コード例
#define ledPin 3 // The compiler will replace any mention of ledPin with the value 3 at compile time.
注意点と警告
define文の後にセミコロンは必要ありません。
もしセミコロンを入れると、コンパイラはエラーとなります。
#define ledPin 3; // これはエラーです。
同様に、#define ステートメントの後に等号を含めると、ページの下の方でコンパイラの不可解なエラーが発生します。
#define ledPin = 3 // this is also an error