C-konstante Ausdrücke

Ein konstanter Ausdruck wird zur Kompilierzeit, Laufzeit ausgewertet und in einem beliebigen Ort verwendet werden kann, dass eine Konstante verwendet werden kann.Der konstante Ausdruck muss zu einer Konstanten auswerten, die im Bereich der darstellbaren Werte für diesen Typ ist.Die Operanden eines konstanten Ausdrucks können ganzzahlige Konstanten und Zeichenkonstanten, Gleitkommakonstanten, Enumerationskonstanten, Typumwandlungen, sizeof Ausdrücke und andere konstante Ausdrücke befinden.

Syntax

  • konstanter Ausdruck:
    bedingter Ausdruck

  • bedingter Ausdruck:
    Logisch-ODErAusdruck

    Logisch-ODErAusdruck**?** Ausdrucks**:** bedingter Ausdruck

  • Begriff:
    ZuweisungAusdruck

    Ausdrückeund Zuweisung Ausdruck

  • Zuweisung Begriff:
    bedingter Ausdruck

    UnärAusdruck Zuweisungsoperator ZuweisungAusdruck

  • Zuweisungsoperator: Ein aus
    += %=/= *= = <<= – = >>= &= ^= |=

Die Struktur für nonterminals, deklarator Enumerator direkten Deklarator, Direkt abstrakte Deklarator als auch Anweisung mit Marke enthalten den Nicht-Terminal konstanten Ausdruck .

Ein ganzzahliger konstanter Ausdruck muss verwendet werden, um die Größe eines Bitfeld members einer Struktur, eines Werts eine Enumerationskonstante, die Größe eines Arrays oder des Werts einer Fall Konstante anzugeben.

Die konstanten Ausdrücken, die in den Präprozessordirektiven verwendet werden, unterliegen jedoch zusätzliche Einschränkungen.Daher wird sie als „eingeschränkte konstante Ausdrücke“. Ein eingeschränkter konstanter Ausdruck kann sizeof Ausdrücke, Enumerationskonstanten, Typumwandlungen keinem Typ bzw. sicherheitsgeschützter Typ float-Konstanten enthalten.Es kann den speziellen konstanten Ausdruck defined (Bezeichnerjedoch)enthalten.

Siehe auch

Konzepte

Operanden und Ausdrücke