Arduino wird mit C oder C ++ Sprache programmiert; Der größte Teil der Syntax beider Sprachen ist gleich. Funktionen, die in der C -Sprache verwendet werden. Lassen Sie uns herausfinden, wie das in Arduino IDE geht.
Strcmp () Funktion
Die Funktion STRCMP () in der Arduino -Programmierung vergleicht zwei verschiedene Zeichenfolgen und gibt drei Werte zurück, abhängig von den Zeichen innerhalb der Zeichenfolge. Die String -Vergleichsfunktion überprüft die ASCII -Werte der in beiden Zeichenfolgen vorhanden.
Das Strcmp () vergleicht sowohl Zeichenfolge 1 als auch Zeichenfolge 2 mit dem Zeichen des Zeichens. Es wird weiter vergleichen, bis es einen unterschiedlichen Charakter zwischen beiden Saiten findet. Wenn der erste Charakter beider Saiten gleich ist, bewegt sich er in Richtung des zweiten und verglichen weiter, bis er einen unterschiedlichen Charakter findet. Wenn nicht ein einzelner unterschiedlicher Zeichen gefunden wird, wird Null zurückgegeben.
Syntax
Die Syntax der Funktion von Strcmp () ist unten angegeben:
int strcmp (const char * string1, const char * string2);In der oben angegebenen Syntax sind String1 und String2 zwei Zeichenfolgen, deren Zeichen einzeln verglichen werden sollen.
Parameterwerte
Die Funktion STRCMP () nimmt zwei Parameter an:
Rückgabewerte
Die Zeichen auf der Tastatur haben eindeutige ASCII -Werte, damit die STRCMP () Funktionen geben je nach String -Zeichen drei verschiedene Werte zurück:
Diese Funktion verglichen jedes Zeichen in der Zeichenfolge mit jedem Zeichen einer anderen Zeichenfolge und wird fortgesetzt, bis ein unterschiedliches Zeichen vorhanden ist, das nur in einer Zeichenfolge vorhanden ist, die auf ASCII -Werten basiert.
Beispielcode
Die Funktion von STRCMP () funktioniert, indem sie die ASCII -Werte der Zeichen vergleichen. Als Referenz siehe Tabelle unten, haben wir zwei Zeichen genommen ich & u. Beide haben unterschiedliche ASCII -Werte mit "ich" 105 und u Wert gleich 117. Was bedeutet den ASCII -Wert von ich ist kleiner als u.
In ähnlicher Weise haben Großbuchstaben i und u ASCII -Wert, der einen größeren ASCII hat als ich.
ASCII -Charakter | Dez | VERHEXEN | Oktober |
ich | 105 | 69 | 151 |
u | 117 | 75 | 165 |
Lassen Sie uns unter Verwendung eines Beispiels erfahren, wie Strcmp () funktioniert.
void setup ()In diesem Code definieren wir zuerst eine neue Variable Ausgang Um den Rückgabewert der Funktion von Strcmp () zu speichern. Dann haben wir die serielle Kommunikation initialisiert, indem wir die Baudrate definiert haben. Die nächsten zwei Saiten sind definiert.
Die Funktion von STRCMP () vergleichen beide Zeichenfolgen und speichert die Ausgabe in Variablen, die bei Start erstellt wurden. Drucken Sie die Ausgabe auf Seriennerien auf Serienmonitor aus.Println -Funktion wird verwendet.
Ausgang
Wir können die Ausgabe auf drei verschiedene Arten kategorisieren:
1. Wenn die Ausgabe positiv ist
Hier ist die Ausgabe positiv, da der ASCII -Wert von String 1 größer als Zeichenfolge 2 ist.
2. Wenn die Ausgabe negativ ist
Hier ist der Ausgang negativ, da der ASCII -Wert von String 1 kleiner als Zeichenfolge 2 ist.
3. Wenn die Ausgabe Null ist
Hier ist der Ausgang Null, da Zeichenfolge 1 gleich String 2 ist.
Notiz: Es sind auch mehrere andere Funktionen verfügbar, die zwei Zeichenfolgen vergleichen, wie z. B.:
Abschluss
Mit dieser Beschreibung können Sie die Arduino-Programmierkenntnisse verbessern und verbessern. Wenn jemand ein grundlegendes Verständnis der C/C ++ - Sprache hat, ist es einfach, das Arduino Board zu programmieren. Die Funktion STRCMP () vergleicht zwei verschiedene Zeichenfolgen und gibt entweder positive, negative oder null Zahlen zurück.