Arduino Char zu Int
-
Konvertieren von
char
inint
mit der einfachen Methode in Arduino -
Konvertieren von
char
inint
mit der FunktiontoInt()
in Arduino -
Konvertieren von
char
inint
mit der FunktionSerial.parseInt()
in Arduino
In diesem Tutorial werden drei Methoden zum Konvertieren eines char
in ein int
erläutert. Die erste Methode ist die einfache Methode, bei der jeweils nur ein Zeichen
konvertiert werden kann. Die zweite Methode ist die Verwendung der Funktion toInt()
und die dritte die Verwendung der Funktion Serial.parseInt()
.
Konvertieren von char
in int
mit der einfachen Methode in Arduino
Diese Methode kann nur ein einzelnes char
in ein int
konvertieren. Sie müssen eine Null vom Typ char
von der char
subtrahieren, um sie in ein int
umzuwandeln.
void loop() {
char someChar = '2'; // variable to store char
int someInt = someChar - '0';
}
Im obigen Code ist someChar
eine Variable vom Typ char
, um das zu konvertierende char
zu speichern. Sie können den Wert in die angegebene Variable char
ändern. someInt
ist eine Variable vom Typ int
, um das Ergebnis der Konvertierung zu speichern. Wenn die angegebene Variable kein einzelnes char
ist, verwenden Sie die folgenden Methoden.
Konvertieren von char
in int
mit der Funktion toInt()
in Arduino
Bei dieser Methode konvertieren Sie zuerst das angegebene char
in einen string
und konvertieren dann mit der Funktion toInt()
den string
in einen int
.
void loop() {
char someChar = '3';
String stringOne =
String(someChar); // converting a constant char into a String
stringOne.toInt();
}
Im obigen Code ist someChar
eine Variable vom Typ char
, um das angegebene char
zu speichern. stringOne
ist eine Variable vom Typ String
. Wenn die String
nicht mit einer gültigen Zahl beginnt, ist die Konvertierung nicht möglich und es wird eine Null zurückgegeben. Überprüfen Sie den Link für weitere Informationen.
Konvertieren von char
in int
mit der Funktion Serial.parseInt()
in Arduino
Sie können diese Methode verwenden, wenn Sie Eingaben von einer seriellen Schnittstelle eines Arduino lesen und die empfangenen Eingaben in eine Int
konvertieren möchten.
void loop() {
if (Serial.available() > 0) {
int valA = Serial.parseInt();
}
}
Die Analyse wird beendet, wenn kein Wert gelesen wurde oder eine Nicht-Ziffer gelesen wurde. Wenn bis zum Timeout keine gültige Eingabe gelesen wird, wird 0 zurückgegeben. Siehe Serial.setTimeout()
, um das Timeout der Seriennummer festzulegen. Überprüfen Sie diesen Link, um weitere Informationen zur Funktion Serial.parseInt()
zu erhalten.