Arduino-Sprache: String-Variablen

Was ist ein String? Wie führe ich Operationen aus? Wie konvertiere ich eine Zahl in eine Ganzzahl?

Einführung

Mit String-Variablen können Sie Zeichenfolgen in Ihren Programmen speichern. Sie können beliebige ASCII-Zeichen in einem String speichern. Mit diesem Variablentyp können Sie beispielsweise Nachrichten schreiben.

So deklarieren Sie einen String:

String string_site = "Arduino Factory";  

Was ist die ASCII-Tabelle?

Die ASCII-Tabelle enthält die Zeichen, die Sie in Ihrer Zeichenfolge verwenden können. Hier ist eine Tabelle, die alle diese Zeichen zusammenfasst:

In dieser Tabelle, die zunächst entmutigend erscheinen mag, verwenden wir die Spalte „char“. Tatsächlich finden Sie in dieser Spalte alle Zeichen, die Sie in Ihre Variable einfügen können.

Was ist der Unterschied zwischen einem Tanktop und einem Tanga?

Char- und String-Variablen sind sich sehr ähnlich: Beide ermöglichen die Speicherung von Zeichenfolgen. Char-Variablen werden jedoch häufiger zum Speichern einzelner Zeichen oder zum Zugriff auf ein Zeichen innerhalb einer Zeichenfolge verwendet. String-Variablen hingegen werden häufiger zum Speichern mehrerer Zeichen und zum Ausführen von Operationen mit ihnen, wie z. B. deren Verkettung, verwendet.

Wir werden am Ende sehen, wie man einen String in einen Char-Variablen konvertiert.

Operation an den Saiten

Wir betrachten nun verschiedene Operationen, die mit Strings durchgeführt werden können:

A) Position eines Elements in einem String ermitteln

So ermitteln Sie die Position eines Elements in einem String:

votre_string.indexOf("votre caractère");

Zum besseren Verständnis der Verwendung können wir Ihnen ein Beispiel geben:

String string_site = "Arduino Factory";
void setup() {
Serial.begin(9600);
Serial.print("Die Position des Zeichens r ist:");
Serial.println(string_site.indexOf("r"));// Gibt 1 zurück, da r an Position 1 unseres Strings steht.
}

void loop() {
}

Wenn der Wert in Ihrem String nicht gefunden wird, gibt das Programm -1 zurück.

B) Die Größe Ihres Strings

Jetzt erfahren wir, wie Sie die Größe Ihres Strings ermitteln:

votre_string.length();

Zum besseren Verständnis der Verwendung können wir Ihnen ein Beispiel geben:

String string_site = "Arduino Factory";
void setup() {
Serial.begin(9600);
Serial.print("Ihre Stringgröße ist:");
Serial.println(string_site.length());// gibt 15 zurück
}

void loop() {
}

C) Vergleich zweier Zeichenfolgen

Wir sehen uns nun an, wie man zwei Zeichenfolgen miteinander vergleicht:

mon_string_1.compareTo(mon_String_2);

Hier sind die möglichen Rückgabewerte dieser Funktion:

Bei identischen Zeichenfolgen wird die Zahl 0 zurückgegeben.
Eine negative Zahl wird zurückgegeben, wenn my_string_1 vor my_string_2 steht.
Eine positive Zahl wird zurückgegeben, wenn my_string_2 vor my_string_1 steht.

Ein Beispiel verdeutlicht die Verwendung:

String string_Arduino = "Arduino";
String string_Factory = "Arduino";
void setup() {
Serial.begin(9600);
Serial.print("Sind die beiden Strings identisch?");
Serial.println(string_Arduino.compareTo(string_Factory));// gibt 0 zurück, da sie identisch sind
}

void loop() {
}

D) Ersetzen eines String-Elements

Wir sehen uns nun an, wie man einen String durch einen anderen ersetzt:

your_string.replace("das_Zeichen_in_der_Zeichenfolge", "die_neue_Zeichenfolge");

On peut vous donner un exemple pour mieux comprendre son utilisation :

String string_site = "Arduino Factory";
void setup() {
Serial.begin(9600);
string_site.replace("Zu", "der_neue_String");
Serial.println(string_site); // Wir erhalten Folgendes: the_nouveau_stringrduino Factory
}

void loop() {
}

Das Ergebnis ist: „the_new_stringrduino Factory“.

E) Groß- und Kleinschreibung in Strings

Jetzt sehen wir uns an, wie man Strings groß- und kleinschreibt:

Ihre_Zeichenfolge.toUpperCase();

Zum besseren Verständnis der Verwendung können wir Ihnen ein Beispiel geben:

String string_site = "Arduino Factory";   
void setup() {
  Serial.begin(9600);
  string_site.toUpperCase();
  Serial.println(string_site); // On obtient ceci : ARDUINO FACTORY
  }
 void loop () {
     
 }

F) Comment mettre votre chaîne de caractère en minuscule

On va maintenant voir comment mettre votre chaîne de caractère en minuscule :

votre_string.toLowerCase();

On peut vous donner un exemple pour mieux comprendre son utilisation :

String string_site = "Arduino Factory";   
void setup() {
  Serial.begin(9600);
  votre_string.toLowerCase();
  string_site.toLowerCase();
  Serial.println(string_site); // On obtient ceci :

Convertir un string en float, int ou char

On va maintenant convertir un string en une variable d’une autre type, int, float ou char.

A) Convertir un string en un entier

On va maintenant voir comment convertir une chaîne de caractère string en un entier.

votre_string.toInt();

Il faut que votre string soit exclusivement des nombres entier seulement pour que cela fonctionne. Sinon vous allez avoir une erreur.

On peut vous donner un exemple pour mieux comprendre son utilisation :

String string_site = "12";   
void setup() {
  Serial.begin(9600);
  string_site.toInt();
  Serial.println(string_site); // On obtient ceci : 12 en nombre entier
  }
  void loop(){
  }

B) Convertir un string en un float

On va maintenant voir comment convertir une chaîne de caractère string en un nombre décimal (float).

votre_string.toFloat()

Il faut que votre string soit exclusivement des nombres décimaux seulement pour que cela fonctionne. Sinon vous allez avoir une erreur.

On peut vous donner un exemple pour mieux comprendre son utilisation :

String string_site = "32.8";   
void setup() {
  Serial.begin(9600);
  string_site.toFloat();
  Serial.println(string_site); // On obtient ceci :32.8 en nombre décimal
}
void loop(){
}

B) Convertir un string en un char

On va maintenant voir comment convertir une chaîne de caractère string en char.

votre_string.charAt(0);

On peut vous donner un exemple pour mieux comprendre son utilisation :

String string_site = "Arduino Factory";   
void setup() {
  Serial.begin(9600);
  string_site.charAt(0);
  Serial.println(string_site); // On obtient ceci :Arduino Factory en char
}

void loop() {
}