Define

来自YFRobotwiki
2017年9月10日 (日) 15:47Allblue讨论 | 贡献的版本

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索

#define是个有用的C组件,可以在程序编译前,给常量一个名词。被定义的常量不会占用Arduino芯片的内存。在编译时编译器会用事先定义的值来取代这些常量。


同样也会带来一些不利因素,举例来说,一旦常量被#define,将自动包含其他一些常量或者变量名。那样的话,这些代码将被替换成#define的数字。


通常,关键字const常被用来取代#define来定义常量。


Arduino宏定义与C宏定义有同样的语法:

#define constantName value

注意:"#"符号不可缺。


示例

#define ledPin 3
// The compiler will replace any mention of ledPin with the value 3 at compile time.


提示

在#define 声明后不能有分号。如果存在分号,编译器会抛出语义不明的错误。

#define ledPin 3;    // this is an error 

类似的,在#define声明中包含"="也会产生语义不明的编译错误。

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




返回Arduino语法参考列表

更多建议和问题欢迎反馈至 YFRobot论坛