
×
C als erste Programmiersprache: ISO-Standard
von Wiese HerbertInhaltsverzeichnis
- 1 Grundbergriffe der Programmierung.
- 1.1 Algorithmen und Probleme.
- 1.2 Nassi-Shneiderman-Diagramme.
- 1.3 Werkzeuge für die Programmierung.
- 1.4 Zeichen.
- 1.5 Variablen und Datentypen.
- 1.6 Entwicklung der höheren Programmiersprachen.
- 2 Einführung in die Programmiersprache C.
- 2.1 Ursprung von C.
- 2.2 Standardisierung von C.
- 2.3 Eigenschaften von C.
- 2.4 Einordnung der Programmiersprache C.
- 2.5 C und C++.
- 3 Lexikalische Konventionen.
- 3.1 Zeichenvorrat von C.
- 3.2 Lexikalische Einheiten.
- 4 Erste Beispielprogramme.
- 4.1 Aufbau eines C-Programms.
- 4.2 Das berühmte Programm „hello, world“.
- 4.3 Programm zur Zinsberechnung.
- 4.4 Euklid’scher Algorithmus als Programm.
- 5 Datentypen und Variablen.
- 5.1 Typkonzept.
- 5.2 Einfache Datentypen.
- 5.3 Variablen.
- 5.4 Typ-Attribute.
- 5.5 Typen in C.
- 5.6 Klassifikation von Datentypen.
- 6 Einführung in Zeiger und Arrays.
- 6.1 Zeigertypen und Zeigervariablen.
- 6.2 Zeiger auf void.
- 6.3 Eindimensionale Arrays.
- 6.4 Einfache Sortierverfahren für eindimensionale Arrays.
- 7 Anweisungen, Ausdrücke und Operatoren.
- 7.1 Operatoren und Operanden.
- 7.2 Ausdrücke und Anweisungen.
- 7.3 Nebeneffekte.
- 7.4 Auswertungsreihenfolge.
- 7.5 L-Werte und R-Werte.
- 7.6 Zusammenstellung der Operatoren.
- 7.7 Implizite Typkonvertierung.
- 7.8 Sequenzpunkte bei Nebeneffekten.
- 8 Kontrollstrukturen.
- 8.1 Selektion.
- 8.2 Iteration.
- 8.3 Sprunganweisungen.
- 9 Blöcke und Funktionen.
- 9.1 Blöcke.
- 9.2 Sichtbarkeit und Lebensdauer.
- 9.3 Definition und Aufruf von Funktionen.
- 9.4 Deklaration von Funktionen.
- 9.5 Gültigkeitsbereiche von Namen.
- 9.6 Alte Funktionsdefinition und -deklaration nach Kernighan und Ritchie.
- 9.7 Die Ellipse… — ein Mittel für variable Parameteranzahlen.
- 9.8 Rekursive Funktionen.
- 10 Fortgeschrittene Zeigertechnik.
- 10.1 Zusammenhang zwischen Zeigern und Vektoren.
- 10.2 Arrays.
- 10.3 Übergabe von Arrays und Zeichenketten.
- 10.4 Vergleich von char-Arrays und Zeigern auf Zeichenketten.
- 10.5 Das Schlüsselwort const bei Zeigern und Arrays.
- 10.6 Kopieren von Zeichenketten.
- 10.7 Standardfunktionen zur Stringverarbeitung und Speicherbearbeitung.
- 10.8 Vektoren von Zeigern und Zeiger auf Zeiger.
- 10.9 Zeiger auf Funktionen.
- 11 Strukturen, Unionen und Bitfelder.
- 11.1 Strukturen.
- 11.2 Unionen.
- 11.3 Bitfelder — Komponenten von Strukturen und Unionen.
- 12 Komplizierte Datentypen, Eigene Typnamen und Eindeutigkeit von Namen.
- 12.1 Komplizierte Vereinbarungen.
- 12.2 Komplizierte Typen.
- 12.3 typedef zur Vereinbarung eigener Typnamen.
- 12.4 Namensräume.
- 12.5 Interne und externe Bindung.
- 13 Speichrung von Dten in Dateisystemen.
- 13.1 Dateien aus Sätzen fester Länge.
- 13.2 Dateien unter UNIX — das Streamkonzept.
- 13.3 Dateien aus Sicht höherer Programmiersprachen.
- 14 Ein- und Ausgabe.
- 14.1 Schichtenmodell für die Ein- und Ausgabe.
- 14.2 Umlenkung der Standardeingabe und -ausgabe.
- 14.3 C-Bibliotheksfunktionen zur Ein- und Ausgabe.
- 14.4 High-Level Funktionen für die Standardeingabe und -ausgabe.
- 14.5 High-Level Dateizugriffsfunktionen.
- 14.6 Low-Level Dateizugriffsfunktionen.
- 15 Speicherklassen.
- 15.1 Adreßraum eines Programms.
- 15.2 Programme aus mehreren Dateien — Adressen.
- 15.3 Programme aus mehreren Dateien — die Speicherklasse extern.
- 15.4 Programme aus mehreren Dateien — die Speicherklasse static.
- 15.5 Speicherklassen bei lokalen Variablen.
- 15.6 Initialisierung.
- 15.7 Tabellarischer Überblick über die Speicherklassen.
- 15.8 Design und Programmiersprache.
- 16 Übergabeparameter und Rückgabewert eines Programms.
- 16.1 Übergabe von Parametern beimProgrammaufruf.
- 16.2 Beendigung von Programmen.
- 17 Dynamische Speicherzuweisung, Listen und Bäume.
- 17.1 Reservierung von Speicher.
- 17.2 Rückgabe von Speicher.
- 17.3 Verkettete Listen.
- 17.4 Baumstrukturen.
- 18 Interne Suchverfahren.
- 18.1 Sequentielles Suchen.
- 18.2 Halbierungssuchen.
- 18.3 Suchen nach dem Hashverfahren.
- 19 Präprozessor.
- 19.1 Aufgaben des Präprozessors.
- 19.2 Einfügen von Dateien in den Source-Code.
- 19.3 Symbolische Konstanten und Makros mit Parametern.
- 19.4 Bedingte Kompilierung.
- 19.5 Weitere Präprozessor-Direktiven.
- Anhang A Standardbibliotheksfunktionen.
- A.1 Fehlersuche (assert. h).
- A.2 Klassifizierung und Konvertierung von Zeichen (ctype. h).
- A.3 Länderspezifische Darstellungen und Zeichen (locale. h).
- A.4 Mathematische Funktionen (math. h).
- A.5 Globale Sprünge (setjmp. h).
- A.6 Signalbehandlungen (signal. h).
- A.7 Behandlung einer variablen Parameterliste (stdarg. h).
- A.8 Ein- und Ausgabe (stdio. h).
- A.9 Zahlenkonvertierung, Speicherverwaltung, Zufallszahlengenerierung und Beenden von Programmen (stdiib. h).
- A.10 String- und Speicherbearbeitung (string. h).
- A. II Datum und Uhrzeit (time. h).
- Anhang B Sortieren MIT dem Quicksort-Verfahren.
- Anhang C Sortierverfahren IM Vergleich.