Define
來(lái)自ALSROBOT WiKi
#define 宏定義
宏定義是一個(gè)有用的C組件,它允許程序員在程序編譯前給常量取一個(gè)名字。在arduino中定義的常量不會(huì)在芯片中占用任何程序空間。編譯器在編譯時(shí)會(huì)將這些常量引用替換為定義的值。
這雖然可能有些有害的副作用,舉例來(lái)說(shuō),一個(gè)已被定義的常量名被包含在一些其它的常量或變量名中。那樣的話(huà)該文本將被替換成被定義的數(shù)字(或文本)。
通常,用const關(guān)鍵字定義常量是更受歡迎的且用來(lái)代替#define會(huì)很有用。
Arduino宏定義與C宏定義有同樣的語(yǔ)法
語(yǔ)法
#define constantName value
注意‘#’是必須的
示例:
#define ledPin 3 // 編譯器在編譯時(shí)會(huì)將任何提及l(fā)edPin的地方替換成數(shù)值3。
提示
#define語(yǔ)句的后面分號(hào)。如果你加了一個(gè),編譯器將會(huì)在進(jìn)一步的頁(yè)面引發(fā)奇怪的錯(cuò)誤。
#define ledPin 3; // this is an error
類(lèi)似地,包含一個(gè)等號(hào)通常也會(huì)在進(jìn)一步的頁(yè)面引發(fā)奇怪的編譯錯(cuò)誤。
#define ledPin = 3 // this is also an error