用户工具

站点工具


reference:language:define
no way to compare when less than two revisions

差别

这里会显示出您选择的修订版和当前版本之间的差别。


前一修订版
reference:language:define [2023/06/07 04:23] (当前版本) – 外部编辑 127.0.0.1
行 1: 行 1:
 +====== Define ======
 +
 +#define 是一个很有用的C语法,它允许程序员在程序编译之前给常量命名。在Ocrobot中,定义的常量不会占用芯片上的任何程序内存空间。在编译时编译器会用事先定义的值来取代这些常量。
 +
 +然而这样做会产生一些副作用,例如,一个已被定义的常量名已经包含在了其他常量名或者变量名中。在这种情况下,文本将被#defined 定义的数字或文本所取代。
 +
 +通常情况下, 优先考虑使用 const 关键字替代 #define 来定义常量。
 +
 +Ocrobot 拥有和 C 相同的语法规范:
 +===== 语法 =====
 +
 +#define  常量名  常量值
 +注意,#是必须的。
 +===== 例子 =====
 +<code>
 +#define ledPin 3
 +//在编译时,编译器将使用数值 3 取代任何用到 ledPin 的地方。
 +</code>
 +===== 提示 =====
 +
 +在#define 声明后不能有分号。如果存在分号,编译器会抛出语义不明的错误,甚至关闭页面。
 +<code>
 +#define ledPin 3; //这是一种错误写法
 +</code> 
 +类似的,在#define声明中包含等号也会产生语义不明的编译错误从而导致关闭页面。
 +<code>
 +#define ledPin = 3 //这是一种错误写法
 +</code>
 +
  
reference/language/define.txt · 最后更改: 2023/06/07 04:23 由 127.0.0.1