Tiefpreis
CHF59.20
Exemplar wird für Sie besorgt.
Kein Rückgaberecht!
Nur wenige höhere Programmiersprachen haben es geschafft, über mehrere Jahrzehnte erfolgreich zu sein. Die Sprache C gehört zweifelsfrei dazu und ist im Gegensatz zu anderen Sprachen, die eine vergleichbar lange Zeit überleben konnten, gerade in den letzten Jahren immer beliebter geworden. Und weil sie in der dominierenden objektorientierten Sprache C++ komplett enthalten ist, kann man ihr wohl ein noch langes Leben prophezeien (allerdings gelten in der Informatik Voraussagen schon dann als "Langzeit-Prognose", wenn sie einen Zeitraum von fünf Jahren umfassen). C-Programmierung gilt als schwierig. Ich kann aus eigener Erfahrung in der Lehre bestätigen, daß der Anfänger tatsächlich mehr Schwierigkeiten als mit anderen Programmiersprachen hat. Aber nach einer gewissen "Durststrecke" zahlen sich die Mühen aus. Wenn die Anfangs Schwierigkeiten überwunden sind, können nach vergleichsweise kurzer Zeit schon anspruchs vollere Probleme gelöst werden. Das setzt allerdings voraus, daß auch die Konzepte dafür gelehrt werden, denn es nützt wenig, sich durch die Problematik der "Pointer" und der "rekursiven Strukturen" hindurchzuquälen, wenn man nicht auch mit den verketteten Listen und den binären Bäumen die Datenstrukturen und dazu die rekursive Programmiertechnik behandelt, die diese Konzepte intensiv benutzen. Schließlich ist der Erfolg beim Erlernen einer Programmiersprache weitgehend auch vom Spaß abhängig, den man bei aller Mühe unbedingt haben sollte. Das schönste Ergebnis, ein funktionierendes Programm aus eigener Fertigung, sollte sich allerdings möglichst auch "so schön" präsentieren, wie es die professionell erzeugte Software tut. Dazu sind Kenntnisse der Windows-Programmierung heute unerläßlich.
Autorentext
Prof. Dr.-Ing. habil. Jürgen Dankert lehrte Technische Mechanik und Informatik an der HAW Hamburg, wo er Dekan des Fachbereichs Maschinenbau und Produktion war.
Klappentext
Das Buch wendet sich sowohl an Studenten aller Fachrichtungen, in denen die C-Programmierung behandelt wird als auch an Praktiker, die Programmierkenntnisse im Selbststudium erwerben bzw. vertiefen wollen. Der Anfänger erlangt beim Durcharbeiten der Beispiel-Programme relativ schnell die Fähigkeiten, eigene Programme zu schreiben. Die strengen Regeln einer höheren Programmiersprache stehen dabei zunächst nicht im Mittelpunkt, obwohl sie zwangsläufig beachtet werden müssen. Anhand der ausführlichen Beispiele, an denen Sinn, Zweck und Auswirkung einer Programm-Konstruktion verdeutlicht werden, wird dem Leser dann die komplette Information darüber zugänglich gemacht. Der Leser, der Vorkenntnisse besitzt, kann sehr schnell zu den anspruchsvolleren Kapiteln vordringen. File-Operationen, dynamische Speicherplatzverwaltung, Arbeiten mit verketteten Listen und binären Bäumen, rekursive Programmierung, betriebssystem-spezifische Operationen und eine Einführung in die Windows-Programmierung sind die Themen, die für ein effektives Arbeiten mit der Sprache C besonders interessant sind. "Dieses durch und durch praktische Buch, ... möchte vorzugsweise Studenten aller Fachrichtungen den Einstieg und das Selbststudium der C-Programmierung leichter machen." BLS-Informationsdienst, Berlin
Inhalt
1 Betriebssysteme, Programmiersprachen.- 1.1 Betriebssysteme.- 1.2 Programmiersprachen.- 1.3 Empfehlungen für Einsteiger, Umsteiger, Fortgeschrittene.- 2 Hilfsmittel für die C-Programmierung.- 2.1 Compiler, Linker, Standard-Libraries.- 2.2 Editoren.- 2.3 Manuals, Lehrbücher.- 2.4 Benötigt man einen Debugger?.- 3 Grundlagen der Programmiersprache C.- 3.1 Wie lernt man eine Programmiersprache?.- 3.2 Vom Problem zum Programm.- 3.3 Das kleinste C-Programm minimain.c.- 3.4 C-Historie: Das Hello, World-Programm hllworld.c.- 3.5 Arithmetik und for-Schleife: Programm hptokw01.c.- 3.6 Einige Grenzwerte der Implementation: Programm limits.c.- 3.7 Bedingte Anweisung und Casting: Programm reihe01.c.- 3.8 Zeitmessung mit clock (): Programm reihe02.c.- 3.9 Standardfunktionen und while-Schleife: Programm valtab01.c.- 3.10 Definition und Aufruf einer Funktion: Programm valtab02.c.- 3.11 Erster Kontakt mit Pointern: Programm valtab03.c.- 3.12 Formatgesteuerte Eingabe mit scanf: Programm valtab04.c.- 3.13 Stabilisierung der Eingabe: Programm valtab05.c.- 3.14 String-Konstanten als Funktionsargumente: Programm valtab06.c.- 3.15 Arrays und Strings: Programme stringl.c und syscall.c.- 3.16 Zwischenbilanz.- 4 Arbeiten mit Libraries.- 4.1 Erzeugen einer Library.- 4.2 Einbinden einer persönlichen Library: Programm valtab07.c.- 4.3 Libraries mit Funktionen, die voneinander abhängig sind.- 4.4 Einbinden von Funktionen aus fremden Libraries.- 5 Fortgeschrittene Programmiertechniken.- 5.1 Noch einmal: Strings und Pointer.- 5.2 Pointer-Arithmetik.- 5.3 Mehrdimensionale Arrays, Pointer-Arrays.- 5.4 Kommandozeilen-Argumente.- 6 File-Operationen undSpeicherplatzverwaltung.- 6.1 Öffnen und Schließen eines Files, Zeichen lesen mit fgetc.- 6.2 Lesen und Schreiben mit fgetc und fputc, temporäre Files.- 6.3 Lesen mit fgets, formatiertes Lesen mit fscanf.- 6.4 Speicherplatz dynamisch allokieren.- 6.5 Speicherplatzverwaltung.- 7 Strukturen, verkettete Listen.- 7.1 Definition von Strukturen, Zugriff auf die Komponenten.- 7.2 Strukturen in Strukturen, Pointer auf Strukturen.- 7.3 Rekursive Strukturen, verkettete Listen.- 7.4 Sortieren mit verketteten Listen: Programm femfile4.c.- 7.5 Unions und Enumerations.- 8 Rekursionen, Baumstrukturen, Dateisysteme.- 8.1 Baumstrukturen.- 8.2 Die Dateisysteme unter UNIX und DOS.- 8.3 Eine UNIX-Besonderheit: Links auf Files und Directories.- 8.4 File-Informationen über die Files eines Directories.- 8.5 Erster rekursiver Funktionsaufruf, Scannen eines Directory-Trees.- 8.6 Selektives Listen der Files eines Directory-Trees: Programm lst.c.- 8.7 Sortieren mit einem binären Baum: Programm lstsort.c.- 8.8 Zwischenbilanz.- 9 Grundlagen der Windows-Programmierung.- 9.1 Das Windows-Konzept.- 9.2 Botschaften (Nachrichten, Messages).- 9.3 Das kleinste Windows-Programm miniwin.c.- 9.4 Windows-Skelett-Programm winskel.c.- 9.5 Text- und Graphik-Ausgabe, der Device context.- 9.6 Maus-Botschaften, Programm mouse1.c.- 9.7 Textausgabe mit TextOut, die Funktion GetSystemMetrics.- 9.8 Fehlersuche in Windows-Programmen.- 10 Ressourcen.- 10.1 Menü und Message-Box, Programm menu1.c.- 10.2 Stringtable und Dialog-Box, Programm dialog1.c.- 10.3 Dialog-Funktion, Dialog-Box, Ressourcen-Editor.- 10.4 Icon und Cursor.- 11 C vertiefen oder C++ lernen?.- 11.1 Empfehlungen für die Vertiefung der C-Kenntnisse.- 11.2 Empfehlungen für das Lernenvon C++.- Anhang A Ein Blick in die Speicherzellen.- A1 Stellenwertsysteme.- A2 Darstellung von Integer-Werten im Rechner.- A3 Darstellung von float- und double-Werten im Rechner.- Anhang B Stack und Heap.- B1 Der Stack.- B2 Der Heap.- Literatur.