Reference   Language | Libraries | Comparison | Changes

sizeof

Beschreibung

Der Operator sizeof gibt die Anzahl der Bytes zurück, welche der Variablentyp benutzt oder ein Array belegt.

Syntax

sizeof(variable)

Parameter

variable: Ein Variablentyp oder Array (z.B. int, float, byte)

Beispiel

Der sizeof Operator wird benutzt, um mit Arrays (wie z.B. Zeichenketten) umzugehen. Diese dürfen dann innerhalb des Programms eine variable Länge haben.

Das Programm schreibt eine Textzeile Zeichen für Zeichen nach Serial. Experimentiere mit der Länge der Textzeile.

char myStr[] = "This is a test.";
int i;

void setup(){
  Serial.begin(9600);
}

void loop() {
  for (i = 0; i < sizeof(myStr) - 1; i++){
    Serial.print(i, DEC);
    Serial.print(" = ");
    Serial.write(myStr[i]);
    Serial.println();
  }
  delay(5000); // slow down the program
}
Beachte, dass sizeof() die Gesamtzahl der Bytes zurückgibt. Für einen Array mit einem Variablentyp, der mehrere Bytes umfasst (z.B. int), muss die Schleife wie folgt aussehen. Bei Zeichenketten muss beachtet werden, dass eine korrekt definierter String mit dem NULL symbol ended, dieser hat den ASCII-Wert 0.

for (i = 0; i < (sizeof(myInts)/sizeof(int)) - 1; i++) {
  // do something with myInts[i]
}

Reference Home

Corrections, suggestions, and new documentation should be posted to the Forum.

The text of the Arduino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.

Share