ArduinoJSON:如何修复打印 1 或 0 而不是 true/false
arduinojson_boolean_issue.cpp
volatile bool value = true;
DynamicJsonDocument json(1024);
json["ok"] = value;
serializeJson(json, Serial);由于 value 被声明为 volatile,这将打印 {"ok": 1} 而不是 {"ok": true}(仅使用 bool value 时有效,使用 volatile bool value 时无效)。
为了强制 {"ok": true},只需将 value 转换为 bool:
arduinojson_boolean_cast.cpp
json["ok"] = (bool)value;完整示例
arduinojson_full_example.cpp
volatile bool value = true;
DynamicJsonDocument json(1024);
json["ok"] = (bool)value;
serializeJson(json, Serial);Check out similar posts by category:
Arduino, Embedded, PlatformIO
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow