在 Arduino 中比较字符串

arduinoarduino boardsarduino idearduino programming language

Arduino 有一个内置的 compareTo() 函数,可帮助比较哪个字符串在另一个字符串之前。非常粗略地,您可以将其视为:如果给您两个字符串,哪个字符串在字典中排在第一位。

语法

String1.compareTo(String2)

其中 String1 String2 是要比较的两个字符串。此函数返回一个整数。以下是整数 − 值的解释

  • 负数 − String1 位于 String2 之前

  • 0 − String1 和 String2 相等

  • 正数 − String2 在 String1 之前

请注意,此函数区分大小写。因此 ‘A’ 在 ‘a’ 之前,而 ‘B’ 在 ‘a’ 之前。但 ‘a’ 在 ‘b’ 之前。此外,数字在字母之前。基本上,如果一个字符的 ASCII 值高于另一个字符,则较高的字符在字典中排在后面。compareTo() 函数逐个字符比较字符串。

示例

void setup() {
   // 将您的设置代码放在此处,运行一次:
   Serial.begin(9600);
   Serial.println();

   String s1 = "Book";
   String s2 = "books";
   String s3 = "library";

   if(s1.compareTo(s2) < 0){
      Serial.println("s1 before s2");
   }

   if(s2.compareTo(s3) < 0){
      Serial.println("s2 before s3");
   }

   if(s3.compareTo(s1) < 0){
      Serial.println("s3 before s1");
   }
}

void loop() {
   // 将您的主代码放在此处,以重复运行:
}

输出

串行监视器输出如下所示 −

如您所见,该函数的工作原理与描述完全一致。


相关文章