gpt4 book ai didi

c++ - 使用 USERNAME :PASSWORD but not for SERIAL:TOKEN? 进行字符串化

转载 作者:行者123 更新时间:2023-11-28 06:46:03 25 4
gpt4 key购买 nike

我有下面的Makefile(如果你问我为什么包含\"你可以引用我的previous question)

BOARD_TAG    = mega2560
CPPFLAGS = -DUSERNAME=\"$(USERNAME)\" -DPASSWORD=\"$(PASSWORD)\"
include $(ARDMK_DIR)/Arduino.mk

和代码:

void setup() {
Serial.begin(9600);
String auth_raw2(USERNAME ":" PASSWORD);
Serial.println(auth_raw2);
}
void loop() {}

当我使用 make USERNAME=hello PASSWORD=world 编译它时,一切正常,我看到打印出“hello:world”。

但是,如果我将 USERNAME 替换为 SERIAL,将 PASSWORD 替换为 TOKEN:

BOARD_TAG    = mega2560
CPPFLAGS = -DSERIAL=\"$(SERIAL)\" -DTOKEN=\"$(TOKEN)\"
include $(ARDMK_DIR)/Arduino.mk

void setup() {
Serial.begin(9600);
String auth_raw2(SERIAL ":" TOKEN);
Serial.println(auth_raw2);
}
void loop() {}

我收到错误,macro.ino:5:27: error: expected ‘)’ before string constant

请注意,$USERNAME 在我的 linux 机器上定义为 disappearedng,而 $PASSWORD、$SERIAL 和 $TOKEN 未定义。

为什么这对 USERNAME:PASSWORD 有效但对 SERIAL:TOKEN 无效?

最佳答案

所以看起来 Arduino 覆盖了 $SERIAL 参数。

将 SERIAL 切换为 DSERIAL 使编译正常

关于c++ - 使用 USERNAME :PASSWORD but not for SERIAL:TOKEN? 进行字符串化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24966878/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com