Define

來自ALSROBOT WiKi
2014年9月12日 (五) 13:25Admin討論 | 貢獻的版本

(差異) ←上一版本 | 最后版本 (差異) | 下一版本→ (差異)
跳轉(zhuǎn)至: 導(dǎo)航搜索

#define 宏定義
宏定義是一個有用的C組件,它允許程序員在程序編譯前給常量取一個名字。在arduino中定義的常量不會在芯片中占用任何程序空間。編譯器在編譯時會將這些常量引用替換為定義的值。

這雖然可能有些有害的副作用,舉例來說,一個已被定義的常量名被包含在一些其它的常量或變量名中。那樣的話該文本將被替換成被定義的數(shù)字(或文本)。


通常,用const關(guān)鍵字定義常量是更受歡迎的且用來代替#define會很有用。


Arduino宏定義與C宏定義有同樣的語法


語法

#define constantName value 

注意‘#’是必須的

示例:

#define ledPin 3
// 編譯器在編譯時會將任何提及l(fā)edPin的地方替換成數(shù)值3。

提示
#define語句的后面分號。如果你加了一個,編譯器將會在進一步的頁面引發(fā)奇怪的錯誤。

#define ledPin 3;    // this is an error 

類似地,包含一個等號通常也會在進一步的頁面引發(fā)奇怪的編譯錯誤。

#define ledPin  = 3  // this is also an error