Online-Skript zur Vorlesung und Übung

Programmieren in C


© 1999-2012 Dipl.Phys. Gerald Kempfer
Internet: www.kempfer.de; Mail: gerald@kempfer.de
(Stand: 06. Mai 2012)



1. Einführung
       - 1.1. Die Geschichte der Sprache
       - 1.2. Struktur eines C-Programms
       - 1.3. Das erste einfache Programm

2. Zeichen, Zeichensätze und Tokens
       - 2.1. Zeichen
       - 2.2. Zeichensatz im ausführenden Programm
       - 2.3. Weiße Leerzeichen und Zeilenende
       - 2.4. Trigraphen
       - 2.5. Multibytes und Wide Characters
       - 2.6. Kommentare
       - 2.7. Tokens
       - 2.8. Operatoren und Trennzeichen
       - 2.9. Bezeichner
       - 2.10. Schlüsselwörter
       - 2.11. Literale

3. Variablen
       - 3.1. Deklaration von Variablen
       - 3.2. Definition von Variablen
       - 3.3. Initialisierung von Variablen
       - 3.4. Unveränderliche Variablen und Konstanten
       - 3.5. Ausdrücke und Werte
       - 3.6. L-Werte und R-Werte
       - 3.7. Gültigkeitsbereich
       - 3.8. Deklarationspunkt
       - 3.9. Sichtbarkeit
       - 3.10. Speicherklassen
       - 3.11. volatile

4. Datentypen in C
       - 4.1. Ausdruck
       - 4.2. Ganze Zahlen
       - 4.3. Operatoren für ganze Zahlen
       - 4.4. Bit-Operatoren
       - 4.5. Reelle Zahlen
       - 4.6. Operatoren für reelle Zahlen
       - 4.7. Regeln zum Bilden von Ausdrücken
       - 4.8. Zeichen
       - 4.9. Multibyte und Wide Characters
       - 4.10. Logischer Datentyp
       - 4.11. Konvertierung zwischen den Datentypen (Typumwandlung)

5. Einfache Ein- und Ausgabe in C
       - 5.1. Datenausgabe auf den Bildschirm
       - 5.2. Dateneingabe über die Tastatur

6. Kontrollstrukturen
       - 6.1. Sequenzen
       - 6.2. Verzweigung: if-Anweisung
       - 6.3. Verzweigung: ? : -Anweisung
       - 6.4. Fallunterscheidung: switch-Anweisung
       - 6.5. Schleifen: while-Schleifen
       - 6.6. Schleifen: do-while-Schleifen
       - 6.7. Schleifen: for-Schleifen
       - 6.8. break und continue
       - 6.9. goto

7. Strukturierte Datentypen
       - 7.1. Arrays
       - 7.2. Zeichenketten (Strings)
       - 7.3. Strukturen
       - 7.4. Aufzählungstypen
       - 7.5. Unions
       - 7.6. Bitfelder

8. Zeiger
       - 8.1. Zeiger und Adressen
       - 8.2. Der Zeigerwert NULL
       - 8.3. Typprüfung
       - 8.4. Zeiger-Arithmetik
       - 8.5. Zeiger und Arrays
       - 8.6. Zeiger und Zeichenketten
       - 8.7. Zeiger und Strukturen
       - 8.8. Unveränderbare Zeiger
       - 8.9. Zeiger auf Zeiger

9. Funktionen
       - 9.1. Funktionsprototypen und -definitionen
       - 9.2. Gültigkeitsbereiche und Sichtbarkeit
       - 9.3. Funktionsschnittstelle
       - 9.4. Rekursiver Funktionsaufruf
       - 9.5. Zeiger auf Funktionen
       - 9.6. Die Funktion main()

10. Präprozessor-Befehle
       - 10.1. #include
       - 10.2. #define, #ifdef und #ifndef
       - 10.3. Makros mit #define
       - 10.4. Variable Argumentenliste in Markodefinitionen
       - 10.5. Vordefinierte Makros
       - 10.6. #undef
       - 10.7. #if
       - 10.8. #line
       - 10.9. #-Operator
       - 10.10. ##-Operator
       - 10.11. #pragma
       - 10.12. #error

11. Datei-Ein- und Ausgabe in C
       - 11.1. Öffnen und Schließen von Dateien
       - 11.2. Ausgabe in Dateien
       - 11.3. Einlesen von Dateien
       - 11.4. Zusammenfassung

12. Dynamische Speicherverwaltung
       - 12.1. Speicherbereiche reservieren
       - 12.2. Reservierte Speicherbereiche freigeben
       - 12.3. Hinweise für die Verwendung von malloc, calloc und free