Comparer les chaînes dans Arduino

Ammar Ali 12 octobre 2023
  1. Comparer des chaînes à l’aide de la fonction compareTo() dans Arduino
  2. Comparer des chaînes à l’aide de la fonction equals() dans Arduino
  3. Comparer des chaînes à l’aide d’opérateurs de comparaison dans Arduino
Comparer les chaînes dans Arduino

Ce tutoriel discutera de la comparaison de deux chaînes à l’aide de la fonction compareTo() dans Arduino.

Comparer des chaînes à l’aide de la fonction compareTo() dans Arduino

Pour comparer deux chaînes dans Arduino, nous pouvons utiliser la fonction compareTo() de l’objet chaîne. La fonction compareTo() compare les caractères présents dans les deux chaînes l’un après l’autre pour identifier si les deux chaînes sont identiques ou non.

La fonction compareTo() commence à partir du premier caractère des deux chaînes et les compare en utilisant leurs valeurs ASCII, et si les chaînes correspondent, elle passera au caractère suivant. Chaque caractère du clavier a une valeur ASCII unique.

Les valeurs ASCII des lettres majuscules et minuscules sont différentes ; la valeur ASCII de a est 97 et A est 65. Si nous voulons comparer les deux chaînes en ignorant les majuscules et les minuscules, nous devons nous assurer que les deux chaînes sont en majuscules ou en minuscules.

Pour convertir une chaîne en majuscule, nous pouvons utiliser la fonction toUpperCase() de l’objet chaîne dans Arduino. Pour convertir une chaîne en minuscules, nous pouvons utiliser la fonction toLowerCase() de l’objet chaîne dans Arduino.

La fonction compareTo() renvoie 0 si les deux chaînes sont égales. La fonction compareTo() renvoie un nombre négatif si la valeur ASCII de la première chaîne est inférieure à la valeur ASCII de la deuxième chaîne.

La fonction compareTo() renvoie un nombre positif si la valeur ASCII de la première chaîne est supérieure à la valeur ASCII de la deuxième chaîne. Par exemple, définissons deux variables de chaîne et comparons-les à l’aide de la fonction compareTo() dans Arduino.

String string_1 = "Hello";
String string_2 = "World";
int result = 0;

void setup() { result = string_1.compareTo(string_2); }
void loop() {}

Le résultat de la comparaison sera stocké dans la variable result. Nous pouvons également utiliser la fonction equals() au lieu de la fonction compareTo().

Comparer des chaînes à l’aide de la fonction equals() dans Arduino

La fonction equals() renvoie un booléen, qui sera vrai si les deux chaînes sont égales et faux si elles ne le sont pas. La fonction equals() est également sensible à la casse, ce qui signifie que abc ne sera pas égal à abc.

Consultez ce lien pour plus de détails sur la fonction equals(). Si nous voulons comparer deux chaînes en négligeant la sensibilité aux majuscules ou aux minuscules, nous pouvons utiliser la fonction equalsIgnoreCase() de l’objet chaîne.

Le equalsIgnoreCase() renvoie également un booléen et n’est pas sensible à la casse, ce qui signifie que abc et ABC seront égaux et la fonction renverra true. Consultez ce lien pour plus de détails sur la fonction equalsIgnoreCase().

Comparer des chaînes à l’aide d’opérateurs de comparaison dans Arduino

Nous pouvons également utiliser les opérateurs de comparaison comme inférieur ou égal à <=, supérieur ou égal à >=, égal à ==, et d’autres opérateurs pour comparer des chaînes.

Dans ce cas, les chaînes seront comparées en fonction des valeurs ASCII des caractères qu’elles contiennent, ce qui signifie que cette comparaison sera également sensible à la casse.

Par exemple, l’instruction ci-dessous renverra false.

"hello" == "Hello"
Auteur: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Article connexe - Arduino String