[更多语法]
说明
#define
是一个有用的 C++ 组件,它允许程序员在编译程序之前为常量值命名。 arduino 中定义的常量不占用芯片上的任何程序存储空间。编译器将在编译时用定义的值替换对这些常量的引用。
但是,这可能会产生一些不希望的副作用,例如,如果已 #defined 的常量名称包含在其他常量或变量名称中。在这种情况下,文本将替换为#defined 数字(或文本)。
一般来说,const
关键字是定义常量的首选,应该使用 #define
来代替。
用法
#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; // this is an error
同样,在#define 语句之后包含等号也会在页面下方生成一个神秘的编译器错误。
#define ledPin = 3 // this is also an error
相关用法
- Arduino #include用法及代码示例
- Arduino long用法及代码示例
- Arduino Arduino_EMBRYO_2 - setLengthXY()用法及代码示例
- Arduino ~用法及代码示例
- Arduino ArduinoBLE - bleDevice.advertisedServiceUuidCount()用法及代码示例
- Arduino const用法及代码示例
- Arduino Ethernet - server.begin()用法及代码示例
- Arduino ArduinoBLE - BLEService()用法及代码示例
- Arduino digitalWrite()用法及代码示例
- Arduino ArduinoBLE - bleCharacteristic.subscribe()用法及代码示例
- Arduino Servo - attach()用法及代码示例
- Arduino write()用法及代码示例
- Arduino Arduino_LSM9DS1 - readGyroscope()用法及代码示例
- Arduino ArduinoSound - FFTAnalyzer.input()用法及代码示例
- Arduino MKRGSM - gprs.attachGPRS()用法及代码示例
- Arduino WiFiNINA - WiFi.config()用法及代码示例
- Arduino MKRGSM - sms.read()用法及代码示例
- Arduino MKRNB - getCurrentCarrier()用法及代码示例
- Arduino Scheduler - Scheduler.startLoop()用法及代码示例
- Arduino Arduino_LSM9DS1 - magneticFieldAvailable()用法及代码示例
- Arduino MKRWAN - available()用法及代码示例
- Arduino ArduinoBLE - BLE.poll()用法及代码示例
- Arduino ArduinoBLE - bleCharacteristic.hasDescriptor()用法及代码示例
- Arduino Ethernet - EthernetUDP.parsePacket()用法及代码示例
- Arduino WiFi101 - WiFi.subnetMask()用法及代码示例
注:本文由纯净天空筛选整理自arduino.cc大神的英文原创作品 #define。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。