Die Programmiersprache C hat in der Praxis eine außerordentliche Bedeutung gewonnen. Durch den Aufschwung objektorientierter Sprachen wie C++ und Java, die auf C basieren, hat sich die Bedeutung von C noch erhöht. Entsprechend ihrer weiten Verbreitung wurde die Sprache standardisiert, zunächst durch ANSI und inzwischen von ISO. Dieses Buch ist sowohl für den Anfänger ohne Programmiererfahrung als auch für Studenten, die bereits eine andere Programmiersprache kennen, empfehlenswert. Es ist als Begleittext zur Vorlesung, als Nachschlagewerk und insbesondere auch zum Selbststudium geeignet.


Leicht verständliche Einführung in C

Klappentext

Das vorliegende Buch hat zum Ziel, dem Neuling die Sprachkonzepte von C so präzise wie möglich und dennoch in leicht verständlicher Weise von Grund auf bis zur komplexesten Stufe vorzustellen. Dabei werden an keiner Stelle die Kenntnisse einer anderen Programmiersprache vorausgesetzt. Der dargestellte Sprachumfang entspricht dem aktuellen ISO-Standard.



Inhalt
1 Grundbegriffe 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 Variablem.- 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 Speicherung von Daten 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 (stdlib.h).- A.10 String- und Speicherbearbeitung (string.h).- A.11 Datum und Uhrzeit (time.h).- Anhang B Sortieren mit dem Quicksort-Verfahren.- Anhang C Sortierverfahren im Vermeich.
Titel
C als erste Programmiersprache
Untertitel
ISO-Standard
EAN
9783322926807
Format
E-Book (pdf)
Veröffentlichung
09.03.2013
Digitaler Kopierschutz
Wasserzeichen
Anzahl Seiten
438
Auflage
2., durchgesehene Auflage 1998
Lesemotiv