Wissensdatenbank Wirtschaftsrecht

aktuelles Dokument: ProzProg2Programmaufbau
image4
image3
image2
image1
 Alle Kategorien:
  Forschungsdatenbank
  Lehrveranstaltungen
  Lexikon
  Literatur
  Rechtsgebiete
  Rechtsprechung
  Service
  Studium F H S
  Wissensmanagement
ich war hier: ProzProg2Programmaufbau

Version [22574]

Dies ist eine alte Version von ProzProg2Programmaufbau erstellt von RonnyGertler am 2013-03-27 15:33:47.

 

 (image: http://wdb.fh-sm.de/uploads/QualipaktLehre/BMBF_Logo_klein.jpg)

Prozedurale Programmierung - Kapitel 2 - Programmaufbau


Inhalte von Dr. E. Nadobnyh

2.1. Bestandteile eines Programms


Das erste Programm


Da formale Beschreibungen etwas trocken sind, wird traditionell mit dem einfachen Beispiel angefangen.

//Ziel dieses Programms ist es, die Textfolge
//"Hallo Welt" auf dem Bildschirm auszugeben.
#include <iostream>  
using namespace std;
int main ( )
{       cout<<"Hallo Welt";  
         return 0;  
}


Drei Bestandteile des Quellcodes:
a) Kommentare beginnen mit oder abgegrenzt, z.B.:

 /* . . . . .  
                                . . . . . */


2.Einzeilige Kommentare beginnen mit


Kommentare dürfen nicht verschachtelt werden.


Präprozessor


Ein Präprozessor ist ein Programm, welches Präprozessordirektiven verarbeitet und die Kommentare ausblendet.

Besonderheiten:
1. Er wird vor dem Compiler gestartet und sucht den Quelltext nach seinen Direktiven durch.
2. Direktiven beginnen mit einem # (Rautenzeichen) als ersten Zeichen einer Zeile.
3. Ein Präprozessor arbeitet auf Textebene, versteht (fast) nichts von C/C. Deshalb keinerlei Fehlerprüfung.
4. Wichtigste Direktiven sind #define und #include.

Mit der Direktive
#define text ersatztext
wird die beliebige Zeichenfolge text durch ersatztext überall im Programm ersetzt. Beispiel:
#define PI 3.1415

Eine Programmbibliothek ist eine Datei, die eine oder mehrere C/C
-Funktionen beinhaltet.

Damit ein Programm von diesen Funktionen Bescheid weiß, müssen diese eingebunden werden. Das geschieht mit der #include- Direktive.

Beispiele für die wichtigen Header-Dateien, welche die Funktionsprototypen enthalten:

#include <iostream> für cout
#include <math.h> für sin
#include <iomanip> für setprecision
#include <stdio.h> für printf


main-Funktion


Ein Programm kann mehrere Funktionen enthalten. Jedes Programm muss die main-Funktion enthalten, die als Hauptprogramm bezeichnet wird. Bei der Programmausführung wird die main-Funktion vom Betriebssystem gestartet. Ser main-Körper ist durch die geschweiften Klammern abgegrenzt und enthält Definitionen und Anweisungen.

int main ( )
{    
         . . .
 
     return 0;
}



Variablendefinitionen und Anweisungen


Ein einfaches typisches Programm besteht aus mehreren Variablendefinitionen und Anweisungen:

1. Variablendefinitionen (Vereinbarungen) erklären dem Compiler die vom Programmierer eingefügten Variablennamen.
Durch die Variablendefinition erhält jede Variable einen Datentyp. Der Datentyp legt die erlaubten Wertebereiche und die zulässigen Operatoren fest. In folgendem Beispiel ist int ein Datentyp integer:
int a, b; int s;

2. Anweisungen sind ausführbare Sprachelemente, die den eigentlichen Algorithmus beinhalten, z.B.:
s = a + b;


Typische Programmmuster


Der Aufbau eines einfachen typischen Programms folgt in den meisten Fällen diesem Muster:
 (image: https://hssm.hqedv.de/uploads/ProzProg2Programmaufbau/pp12.gif)

Die Eingabe, Verarbeitung und Ausgabe sind die Anweisungen im typischen EVA-Programm:
 (image: https://hssm.hqedv.de/uploads/ProzProg2Programmaufbau/pp13.gif)


Typisches Programm. Beispiel
 (image: https://hssm.hqedv.de/uploads/ProzProg2Programmaufbau/pp14.gif)


2.2. Syntax


Syntax und Semantik
Unter Syntax einer Sprache versteht man die Menge der
grammatikalischen Regeln, die bestimmen, wie die
Symbole einer Sprache korrekt zu benutzen sind.

Die Semantik beschreibt die Bedeutung der syntaktisch
korrekten Sätze, d.h. wie sie sich verhalten, wenn sie auf
Rechnern ausgeführt werden.

Syntax ist hierarchisch aufgebaut:


  1. Alphabet,
  1. Lexikalische Einheiten,
  1. Sprachelemente.


Syntaxhierarchie


 (image: https://hssm.hqedv.de/uploads/ProzProg2Programmaufbau/pp15.gif)


Alphabet


Das gesamte Alphabet der Grundzeichen ist in Zeichen eingeteilt, die für die Syntaxregeln relevant sind:

  • Kleinbuchstaben: a .. z
  • Großbuchstaben: A .. Z
  • Unterstreichungszeichen: _
  • Ziffern: 0 .. 9
  • Sonderzeichen:
! # $ % & * + , − . / : ; < >
? @ | \ ~ { } " ' ( ) [ ]
  • Nichtdruckbare Zeichen:
    • ’ ’ -Leerstelle, Leelzeichen,
    • ’\n’ -neue Zeile, Zeilenwechsel Return, Enter,
    • ’\t’ -Tabulator,
    • ‘\0’ -Null-Zeichen ua.


Lexikalische Einheiten


Lexikalische Einheiten (Sinneinheiten, Token) sind bestimmte regelhaft gebildete Wörter (Zeichengruppen) eines Programms, die durch Trennzeichen voneinander abgetrennt sind.

1. Namen (Identifikator, Bezeichner)
  • Namen sind Zeichenfolgen, die nur Buchstaben, Ziffern, oder das Unterstreichungszeichen “ _“ enthalten.
  • Umlaute und “ß“ sind nicht erlaubt.
  • Meist 31 Zeichen, strenge Unterscheidung zwischen groß und klein.
  • Erstes Zeichen darf keine Ziffer sein.
  • Unterstreichungszeichen als erstes Zeichen ist füt Dienstnamen reserviert.
  • Standardfunktionen wie sin() oder fopen() sollen nicht umfunktioniert werden.

2.Schlüsselwörter (Wortsymbole, keyword)
  • Bestimmte Wörter haben eine besondere Bedeutung, beispielsweise main, while und if.
  • C hat eine geringe Anzahl von Schlüsselwörtern, etwa dreißig.
  • Schlüsselwörter dürfen nicht als Namen verwendet werden.

3. Literale (Konstanten, constant, literal)
Es gibt Literale für Ganzzahlen, Gleitpunktzahlen, Zeichen, Zeichenketten, Wahrheitswerte.

4.Operatoren
Festgelegte Zeichen, z.B.: + oder Zeichengruppen, z.B.: <<.

5.Trennzeichen (separator)
z.B.: Zwischenraum (space), Zeilenwechsel, Operatoren.


Einige Schlüsselwörter in C


auto break case char const continue default do double else enum extern float for goto if int long register return
short signed sizeof static struct switch typedef union unsigned void volatile while


Klammern


Klammern dienen in der Schriftsprache als Satzzeichen zur Gliederung der syntaktischen Form.

Benennung Zeichen Verwendungsbeispiel
Runde () Berechnungsreihenfolge
Eckige [] Index-Operator
Geschweifte {} Blockgrenzen
Spitze <> Header
Einfache Hochkommas '' Zeichenliterale
Anführungszeichen (Gänsefüßchen) " " Zeichenketten







CategoryProzProg
Diese Seite wurde noch nicht kommentiert.
Valid XHTML   |   Valid CSS:   |   Powered by WikkaWiki