现在,我有下面的开关-大小写,使用表示某些文本的枚举构建.
String inputMessage = Serial.readString(); //Input is either TEXT_1 or TEXT_2.
enum Messages {
TEXT_1, TEXT_2
};
enum Messages currentMessage = TEXT_2;
switch (currentMessage) {
case TEXT_1:
Serial.println("RESPONSE_1");
break;
case TEXT_2:
Serial.println("RESPONSE_2");
break;
default:
break;
我试图达到一个点,即字符串的内容(这是Arduino C代码),inputMessage (将是TEXT_1或TEXT_2 )来控制currentMessage,它将控制开关大小写。如果可能的话,我想避免if -否则堆栈(因此,开关-大小写的尝试),因为我确实打算在将来将文本的数量扩大到更高的数目。
如果需要更多的信息,请告诉我。
发布于 2022-08-26 01:10:07
enum
只是一个整数。这不是一根绳子。
您需要一个具有字符串比较函数的if/else梯子,因为您不能将字符串作为switch/case
的控制表达式。只允许整数
https://stackoverflow.com/questions/73498484
复制相似问题