Systemnahe Programmierung in Chome Systemnahe Programmierung in C: Syntax für Anweisungen Prof. Dr. Uwe Schmidt FH Wedel

Syntax für Anweisungen

weiter

weiter

Anweisungen

Statements
Stmt    ::= NullStmt
          | JumpStmt
          | LabelStmt
          | ExprStmt
          | Block
          | BranchStmt
          | LoopStmt
 
NullStmt
        ::= ;
 
ExprStmt
        ::= Expr ;
 
Block   ::= { DeclarationList StatementList }
 
DeclarationList
        ::= { Declarartion }
 
StatementList
        ::= { Stmt }
weiter
Verzweigungs-
Anweisungen
BranchStmt
        ::= IfStmt
          | SwitchStmt
 
IfStmt  ::= if ( Expr ) Stmt
            [ else Stmt ]
 
Mehrweg-
Verzweigungen
vereinfachte Syntaxregeln für eine strukturierte Verwendung
 
SwitchStmt
        ::= switch ( Expr ) { Cases }
 
Cases   ::= { case ConstExpr : StatementList }
            [ default : StatementList ]
 
ConstExpr
        ::= Expr
merke
ConstExpr müssen zur Übersetzungszeit ausgewertet werden können
weiter
Schleifen
LoopStmt
        ::= WhileStmt
          | DoStmt
          | ForStmt
 
WhileStmt
        ::= while ( Expr ) Stmt
 
DoStmt  ::= do Stmt while ( Expr ) ;
 
ForStmt ::= for ( [ Expr ] ; [ Expr ] ; [ Expr ] )
            Stmt
weiter
Sprung-
Anweisungen
JumpStmt
        ::= ReturnStmt
          | BreakStmt
          | ContinueStmt
          | GotoStmt
 
ReturnStmt
        ::= return [ Expr ] ;
 
BreakStmt
        ::= break ;
 
ContinueStmt
        ::= continue ;
 
GotoStmt
        ::= goto LabelName ;
 
LabelStmt
        ::= LabelName : Stmt
weiter

Letzte Änderung: 11.01.2007
© Prof. Dr. Uwe Schmidt
Prof. Dr. Uwe Schmidt FH Wedel