Skip to main content
main-content
Top

About this book

Die Programmiersprache C wurde Anfang der siebziger Jahre (1972) von Dennis M. Ritchie in den Bell Laboratories entwickelt, im Zusammenhang mit der Implementation des Betriebssystems UNIX auf der Rechenanlage DEC PDP-ll. Viele wichtige, in C verwirklichte Ideen entstammen allerdings der Sprache B, die von Ken Thompson (1970) für das erste UNIX-System auf der DEC PDP-7 geschrieben wurde, die wiederum ihren Ursprung in der von Martin Richards entwickelten Sprache BCPL (1967) hat. Fast das gesamte Betriebssystem UNIX ist in C geschrieben. Mittlerweile wird C nicht nur unter UNIX, sondern auch unter anderen Betriebssystemen eingesetzt. Der Grund für die zunehmende Beliebtheit von C sind Portabilität, d.h. die Lauffähigkeit der Programme ohne Änderungen auf den verschiedensten Rechnern, und breite Anwendungsmöglichkeiten, die wiederum die Folge von mehreren Faktoren sind: • C besitzt moderne, hochsprachliche Steuerstrukturen, wie etwa die Sprachen Ada, PLll und Pascal. • In C kann man Bits, Bytes und Zeichenketten manipulieren, wie mit einem Assembler, aber auch Zeiger und strukturierte Datentypen verwenden. • C ist vom Umfang her eine kleine, leicht erlernbare Sprache (32 Schlüsselwörter, Basic über 150!). • C ermöglicht weitgehend redundanz-freien Quellcode, d.h. C-Programme sind de- lich kürzer als Programme in anderen Sprachen. Dieses alles sind Forderungen, die man an eine Sprache stellt, in der Betriebssysteme, Compiler oder professionelle Anwenderprogramme geschrieben werden sollen. Daher wird C auch als "die Sprache der Programmierer" bezeichnet.

Table of Contents

Frontmatter

Kapitel 1. Einführung

Zusammenfassung
In diesem Kapitel wird ein Überblick über C gegeben. An einigen kleinen Programmen werden die wesentlichsten Sprachelemente demonstriert, wobei kein Anspruch auf Vollständigkeit erhoben wird. In den folgenden Kapiteln werden alle hier vorgestellten Sprachkonstrukte detailliert erörtert.
Martin Lowes, Augustin Paulik

Kapitel 2. Numerische Datentypen und Ausdrücke

Zusammenfassung
C erlaubt eine Vielzahl verschiedener Datentypen.
Martin Lowes, Augustin Paulik

Kapitel 3. Anweisungen

Zusammenfassung
Anweisungen beschreiben die Operationen, die ein Programm bzw. eine Funktion ausführt.
Martin Lowes, Augustin Paulik

Kapitel 4. Funktionen und Programmstruktur

Zusammenfassung
Es ist eine grundlegende Programmiertechnik, wiederkehrende Berechnungen eines Programms oder auch logisch zusammenhängende Programmabschnitte als Unterprogramme auszugliedern. Ein Unterprogramm ist letztlich eine zusammengesetzte, benannte Anweisung, deren Abarbeitung bei Bedarf durch den Aufruf des Unterprogramms, d.h. die Nennung ihres Namens, veranlaßt werden kann.
Martin Lowes, Augustin Paulik

Kapitel 5. Felder und Zeiger

Zusammenfassung
In Programmen kommt es häufig vor, daß man mit gleichartigen Objekten zu tun hat, die man in Schleifen verarbeiten möchte. Unterbringen könnte man die Objekte ohne weiteres, indem man für jedes eine spezielle Variable bereitstellt — sie dann in Schleifen zu verarbeiten, wäre allerdings nicht möglich, da man ja jedes Objekt mit dem Namen seiner Variablen ansprechen müßte. Für solche Zwecke kennt C, wie andere Programmiersprachen auch, die Felder. Felder erlauben es zum Beispiel, Vektoren und Matrizen, die zur Formulierung mathematischer Probleme verwendet werden, in einem Programm zu realisieren.
Martin Lowes, Augustin Paulik

Kapitel 6. Strukturen und Zeiger

Zusammenfassung
Felder und ihre Verarbeitung werden durch verschiedene wesentliche Merkmale gekennzeichnet:
  • Die Objekte, die zu einem Feld zusammengefaßt werden, bilden für das Programm eine Einheit.
  • Die Komponenten eines Feldes können bequem sequentiell verarbeitet werden. Ob man dazu Indizes oder Zeiger verwendet, ist letztlich gleichwertig.
  • Alle Komponenten eines Feldes besitzen einen einheitlichen Typ.
Martin Lowes, Augustin Paulik

Kapitel 7. Der Präprozessor

Zusammenfassung
Im „alten“ C war der Präprozessor eine „Zugabe“, mit der man manches machen konnte — oder auch nicht, je nach Implementation. Wie der Name schon andeutet, handelte es sich in der Regel um ein separates Programm.
Martin Lowes, Augustin Paulik

Kapitel 8. Die Standardbibliothek

Übersicht
In seiner ursprünglichen Konzeption war C eine „kleine“ Sprache: Es gab nur wenige Anweisungen; vieles, darunter die gesamte Ein-/Ausgabe, wurde von der Sprache nicht definiert.
Martin Lowes, Augustin Paulik

Kapitel 9. Ein-/Ausgabe

Zusammenfassung
Die Header-Datei <stdio.h> enthält alle Typ- und Macrodeklarationen sowie alle Funktionsprototypen, die für die Ein-/Ausgabe benötigt werden.
Martin Lowes, Augustin Paulik

Kapitel 10. Was es sonst noch gibt

Zusammenfassung
Neben den bereits eingeführten Datenattributen extern, static, auto und const kennt C zwei weitere Datenattribute.
Martin Lowes, Augustin Paulik

Backmatter

Additional information