Reference   Language | Libraries | Comparison | Changes

{} Geschweifte Klammern

Geschweifte Klammern sind ein wichtiger Teil der Programmiersprache C. Sie werden in verschiedenen Konstrukten verwendet, die weiter unten erläutert sind. Dies kann für Anfänger manchmal verwirrend sein.

Aus eine geschweifte Klammer auf "{" muss stets eine geschweifte Klammer zu "}" folgen. Dieser Zustand wird oft auch als "ausbalancierte Klammern" bezeichnet. Die Arduino-IDE (integrated development environment, z.Dt. integrierte Entwicklungsumgebung) beinhaltet eine gute Möglichkeit, um die Balance von geschweiften Klammern zu überprüfen. Wenn Sie eine geschweifte Klammer markieren oder den Cursor direkt hinter einer solchen platzieren, wird das zusammengehörige Klammerpaar hervorgehoben.

Gegenwärtig funktioniert dieses Feature nicht einwandfrei, da die IDE fälschlicherweise geschweifte Klammern in auskommentierten Code-Zeilen findet und hervorhebt.

Programmieranfänger und Programmierer, die von der Sprache BASIC zu C herübergewechselt sind, finden die Benutzung von geschweiften Klammern oft verwirrend und entmutigend. Im Grunde repräsentiert die geschweifte Klammer die aus BASIC bekannten Anweisungen RETURN in Funktionen, ENDIF in Fallunterscheidungen und NEXT in Schleifen.

Da die Verwendung der geschweiften Klammern so vielseitig ist, ist es für eine gute Programmier-Praxis empfehlenswert, die geschweifte Klammer zu direkt nach der Klammer auf zu schreiben. Anschließend vervollständigen Sie das Konstrukt, das die geschweiften Klammern erfordert, durch Anweisungen. So werden weder Ihre Klammern noch Ihre Gemütslage jemals aus der Balance geraten.

Nicht ausbalancierte Klammern können oft zu kryptischen und undurchschaubaren Compiler-Fehlern führen, die in einem umfangreichen Programm nur schwer zu lokalisieren sind. Wegen ihrer vielseitigen Verwendung sind geschweifte Klammern auch unverzichtbar für die Syntax, und das Versetzen einer geschweiften Klammer um eine oder zwei Zeilen kann das Verhalten des Programms drastisch verändern bzw. ein fehlerfreies Kompillieren verhindern.

Die wichtigsten Verwendungen der geschweiften Klammern

Funktionen

  void meineFunktion(Datentyp Argument){
    Anweisung(en)
  }

Schleifen

  while (boolean Ausdruck)
  {
     Anweisung(en)
  }

  do
  {
     Anweisung(en)
  } while (boolean Ausdruck);

  for (Initialisierung; Abbruchbedingung; erhöhende Anweisung)
  {
     Anweisung(en)
  } 

Fallunterscheidungen

  if (boolean Ausdruck)
  {
     Anweisung(en)
  }

  else if (boolean Ausdruck)
  {
     Anweisung(en)
  } 
  else
  {
     Anweisung(en)
  }

Reference Home 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