Ez a példa bemutatja, hogyan lehet ezzel a paranccsal válaszolni a Serial Monitor bemenetére.
Utolsó felülvizsgálat: 2022.02.04 16:50
Egy String hosszát a length() paranccsal kaphatja meg. Ez a példa bemutatja, hogyan lehet ezzel a paranccsal válaszolni az Arduino Software (IDE) soros monitorról érkező bemenetre. Ha a bemeneti karakterlánc túl hosszú, a vázlat egy konkrét üzenetet küld a felhasználónak.
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
A length()
egy karakterlánc hosszát adja vissza. Sok alkalom van, amikor szükség van erre. Például, ha meg akarja győződni arról, hogy egy karakterlánc 140 karakternél rövidebb, hogy elférjen egy szöveges üzenetben, tegye a következőket:
/*
String length()
Példák a length() használatára egy karakterláncban.
Nyissa meg a Serial Monitort, és kezdje el a karakterek küldését az eredmények megtekintéséhez.
created 1 Aug 2010
by Tom Igoe
Ez a kód nyilvános.
https://docs.arduino.cc/built-in-examples/strings/StringLength
*/
String txtMsg = ""; // egy karakterlánc a bejövő szöveghez
unsigned int lastStringLength = txtMsg.length(); // a karakterlánc korábbi hossza
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("\n\nString length():");
Serial.println();
}
void loop() {
// adjon hozzá bármilyen bejövő karaktert a karakterlánchoz:
while (Serial.available() > 0) {
char inChar = Serial.read();
txtMsg += inChar;
}
// nyomtassa ki az üzenetet és értesítést, ha megváltozott:
if (txtMsg.length() != lastStringLength) {
Serial.println(txtMsg);
Serial.println(txtMsg.length());
// ha a karakterlánc 140 karakternél hosszabb, panaszkodj:
if (txtMsg.length() < 140) {
Serial.println("That's a perfectly acceptable text message");
} else {
Serial.println("That's too long for a text message.");
}
// jegyezze meg a hosszt a következő alkalommal a ciklushoz:
lastStringLength = txtMsg.length();
}
}
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.