05.11.2013 Aufrufe

Skript Programmierung C/C++

Skript Programmierung C/C++

Skript Programmierung C/C++

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

BNF (Backus-Nauer-Form) - Formalisierung einer Grammatik mit den Bestandteilen:<br />

(1) Terminalsymbole (die gültigen bzw. verwendbaren Zeichen)<br />

(2) Nichtterminalsymbole (Bsp.: letter, statement, identifier, ...)<br />

(3) Produktionen (auch Ableitungsregeln)<br />

(4) Startsymbol (ausgezeichnetes Nichtterminalsymbol)<br />

digit ::= 0|1|2|3|4|...|9<br />

syntaktische Kategorie 10 Alternativen Terminalsymbole (nicht weiter zerlegbar)<br />

Nichtterminalsymbol<br />

::= Bedeutung "kann ersetzt werden durch"<br />

Schreibweisen in Produktion<br />

| Auswahlzeichen, Alternativen<br />

{} 1 genau 1 Term ist auszuwählen<br />

{} 0+ 0 oder mehr Term sind auszuwählen<br />

{} 1+ 1 oder mehr Term sind auszuwählen<br />

{} wahlfreier Term<br />

2.2 C-Schlüsselwörter<br />

C hat 32 Schlüsselwörter (siehe Folie F-9). Dies sind reservierte Namen, die nicht mehr als<br />

eigene Variablen angegeben werden dürfen.<br />

2.3 Namen<br />

Bestandteile:<br />

Klein- und Großbuchstaben, Ziffern, Unterstrich<br />

BNF<br />

identifier ::= {letter | underscore} 0<br />

{letter | underscore | digit} 0+<br />

!!! keine Ziffer am Anfang<br />

letter ::= lowercaseletter | uppercaseletter<br />

lowercaseletter ::= a | b | c ... /2<br />

uppercaseletter ::= A | B | C ... /2<br />

Regeln zur Namensvergabe:<br />

- am Anfang keine Ziffer<br />

- Variablen- und Funktionsnamen meist in Kleinbuchstaben<br />

- define-Konstanten meist in Großbuchstaben<br />

- mindestens die ersten 31 Zeichen werden unterschieden<br />

2.4 Ganzzahlige dezimale Konstanten<br />

BNF<br />

decimal_integer ::= 0 | positive_decimal_integer<br />

positive_decimal_integer ::= positive_digit {digit} 0+<br />

positive_digit ::= 1 | 2 | ... | 9<br />

Folge: führende Nullen nicht erlaubt!!!<br />

2.5 Zeichenkonstanten<br />

Zeichenketten : Klammerung mit "..."<br />

12

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!