Hitta längden på en sträng

Arduino:
Hitta längden på en sträng

Hur gör man:

För Arduino finns funktionen strlen() för C-stilens strängar (char arrays) och metoden length() för String-objekt. Här är exempel på båda:

void setup() {
  Serial.begin(9600); // Starta seriell kommunikation.
  
  // C-stil sträng (char array).
  char text1[] = "Hej Sverige!";
  Serial.println(strlen(text1));  // Skriv ut längden: 12

  // Arduino String-objekt.
  String text2 = "Arduino är kul!";
  Serial.println(text2.length()); // Skriv ut längden: 15
}

void loop() {
  // Här skulle din kod köra i en oändlig loop (inget för denna demonstration).
}

Kör koden, och titta i serieloggen för att se stränglängderna: 12 och 15.

Djupdykning:

Historiskt sett är strlen() del av C:s standardbibliotek och räknar tecken tills den hittar en nollterminator. String-klassen i Arduino är senare tillkommen och length() fungerar oberoende av nollterminator. C-stilens strlen() kan vara snabbare men kräver att man hanterar minnet själv. String.length(), å andra sidan, är enklare att använda men kan leda till fragmentering av minnet om man inte är försiktig. Valet beror på situation och personlig preferens.

Se även: