按名称打印字符串作为字符串的内容?

Print a String by name recieved as the contents of a string?

我正在尝试创建一个系统,该系统能够使用配置字符串设置 lcd 上显示的项目。

示例:

String configSTRA = "A1A2B2B30000";

  String cADP1 = configSTRA.substring(0, 2);    // => "Code Pair: 1"

  String cADP2 = configSTRA.substring(2, 4);    // => "Code Pair: 2"

  String cADP3 = configSTRA.substring(4, 6);    // => "Code Pair: 3"

  String cADP4 = configSTRA.substring(6, 8);    // => "Code Pair: 4"

String A1 = ("test");

String A2 = ("12:00");

String B2 = ("[V in  ]");

String B3 = ("[V out ]"); 


lcd.print(cADP1);

我想要上面最后的cmd打印字符串A1的内容? 显然此刻它打印 A1.

C++ 无法在 运行 时字符串和编译时变量名之间进行映射。您可以使用 map 自己进行映射。像这样:

std::map<String, String> varMap;
varMap["A1"] = "test";
varMap["A2"] = "12:00";
//...

lcd.print(varMap[cADP1]);