Az operátorokat használjuk annak felismerésére, hogy milyen típusú karakterrel van dolgunk.
Utolsó felülvizsgálat: 2022.02.04 16:50
Ebben a példában azokat az operátorokat használjuk, amelyek lehetővé teszik, hogy felismerjük a karakter típusát, amellyel foglalkozunk. Hasznos ellenőrizni, hogy egy karakter ASCII, nagybetű-e vagy numerikus-e, vagy írásjel-e és így tovább. A rendelkezésre álló lehetőségek sokféle helyzetet lefednek, és ezt az alábbi vázlat szemlélteti. Az Arduino Software (IDE) soros monitorán keresztül a táblára küldött minden karaktert a vázlat elemzi, amely visszaadja az összes megtalált információt. Egy karakter több feltételt is kiválthat, ezért egy bejegyzésre több választ is kaphat.
Az elérhető operátorok a következők:
isAlphaNumeric() ez alfanumerikus
isAlpha() ez betű
isAscii() ez ASCII
isWhitespace() ez whitespace
isControl() ez vezérlőkarakter
isDigit() ez számjegy
isGraph() ez nyomtatható karakter, amely nem whitespace
isLowerCase() ez kisbetű
isPrintable() ez nyomtatható
isPunct() ez írásjel
isSpace() ez szóköz karakter
isUpperCase() ez nagybetű
isHexadecimalDigit() ez egy érvényes hexadecimális számjegy (azaz 0 - 9, a - f vagy A - F)
Hardver szükséglet
Arduino kártya
Az áramkör
Ebben a példában nincs áramkör, bár a kártyát USB-n keresztül kell csatlakoztatni a számítógéphez, és az Arduino Software (IDE) soros monitor ablakának nyitva kell lennie.

A kód
Nyissa meg az Arduino Software (IDE) soros monitor ablakát, és írjon be egyszerre egy karaktert, majd nyomja meg a Küldés gombot, hogy jelentést kapjon az adott karakterről.
/*
Character analysis operators
Példák a karakterelemző operátorok használatára.
Küldj el egy tetszőleges bájtot, és a vázlat körbeírja.
created 29 Nov 2010
modified 2 Apr 2012
by Tom Igoe
Ez a kód nyilvános.
https://docs.arduino.cc/built-in-examples/strings/CharacterAnalysis
*/
void setup() {
// Nyissa meg a soros kommunikációt, és várja meg, amíg megnyílik a port:
Serial.begin(9600);
while (!Serial) {
; // várja meg a soros port csatlakozását. Csak a natív USB-porthoz szükséges
}
// küldj bevezetőt:
Serial.println("Küldj tetszőleges bájtot és elmondok róla mindent, amit tudok!");
Serial.println();
}
void loop() {
// elkap minden bejövő bájtot:
if (Serial.available() > 0) {
int thisChar = Serial.read();
// mondd, mit küldtek:
Serial.print("Ezt küldted: \'");
Serial.write(thisChar);
Serial.print("\' ASCII értéke: ");
Serial.println(thisChar);
// elemezni a küldötteket:
if (isAlphaNumeric(thisChar)) {
Serial.println("ez alfanumerikus");
}
if (isAlpha(thisChar)) {
Serial.println("ez betű");
}
if (isAscii(thisChar)) {
Serial.println("ez ASCII");
}
if (isWhitespace(thisChar)) {
Serial.println("ez whitespace");
}
if (isControl(thisChar)) {
Serial.println("ez vezérlőkarakter");
}
if (isDigit(thisChar)) {
Serial.println("ez számjegy");
}
if (isGraph(thisChar)) {
Serial.println("ez nyomtatható karakter nem whitespace");
}
if (isLowerCase(thisChar)) {
Serial.println("ez kisbetű");
}
if (isPrintable(thisChar)) {
Serial.println("ez nyomtatható");
}
if (isPunct(thisChar)) {
Serial.println("ez írásjel");
}
if (isSpace(thisChar)) {
Serial.println("ez szóköz karakter");
}
if (isUpperCase(thisChar)) {
Serial.println("ez nagybetű");
}
if (isHexadecimalDigit(thisChar)) {
Serial.println("ez valódi hexadecimális számjegy (azaz 0 - 9, a - f, vagy A - F)");
}
// adj hozzá némi szóközt, és kérj még egy bájtot:
Serial.println("-------------------------------");
Serial.println("Küldjél egy másik bájtot:");
Serial.println();
}
}
Tudj meg többet
További alapvető oktatóanyagokat a beépített példák részben talál.
Felfedezheti a nyelvi referenciát is, az Arduino programozási nyelv részletes gyűjteményét.