C-Tutorial (C oder C++, Vorwort, Installation, Kapitel 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)

Vorwort

Autor: Ing. Andreas Hammer, MSc (WU)

Dieses Dokument, das Design der Seite sowie die darin enthaltenen Quellcodes sind urheberrechtlich geschützt.
Der private Gebrauch ist kostenlos möglich.
Eine kommerzielle Nutzung sowie die Verwendung an Schulen, anderen Ausbildungsstätten (im weitesten Sinne) sowie zur betrieblichen Aus- und Weiterbildung erfordern die Zustimmung des Autors.
Kontaktieren Sie mich in diesem Fall bitte per E-Mail ().

Es ist NICHT gestattet, dieses Dokument weiterzuverbreiten!
Es ist dabei egal, welches Medium verwendet wird. Es ist somit auch NICHT zulässig, dieses Dokument im Internet zu verbreiten. Darunter fällt auch das Spiegeln (mirroring) auf anderen Servern. Setzen Sie bitte stattdessen einen Link, gerne auch auf eine einzelne Seite bzw. Absatz. Sie dürfen selbstverständlich aus diesem Dokument - im Rahmen eines üblichen Zitats - zitieren (bitte Quelle angeben).

Im Folgenden wird zur Vereinfachung und leichteren Lesbarkeit nur die männliche Form verwendet. Es sind damit natürlich beide Geschlechter gemeint. Für die Richtigkeit, Vollständigkeit und Aktualität der vermittelten Inhalte wird keine Haftung übernommen! Die Benutzung erfolgt somit auf eigene Gefahr!
Für Feedback, Hinweise auf Irrtümer und Fehler bin ich dankbar (Feedback).

Letzte Aktualisierung: 27. August 2011
Dieses Tutorial wurde von mir 2001/2002 geschrieben und 2002 veröffentlicht. Im Jahr 2008 habe ich das Tutorial größtenteils neu geschrieben, Ergänzungen vorgenommen und alle Quellcode-Beispiele getestet. Das vorher ausständige Kapitel 5 ist fertig, die Inhalte sind nun in Kapitel 12 und 13 enthalten.

Geschichte und Eigenschaften von C

C wurde von 1969-1973 in den AT&T Bell Labs von Dennis Ritchie entwickelt. "Vorgänger" der Programmiersprache waren B und BCPL (Basic Combined Programming Language). Ritchie schrieb auch den ersten Compiler zu C. Eine weitere bekannte Größe ist Brian Kernighan. Kernighan war Mitentwickler und Co-Autor des Buches The C Programming Language. Das "Ur-C" bezeichnet man auch K&R-C (Kernighan & Ritchie C).

Die Entwicklung von UNIX steht in Verbindung mit der von C. UNIX wurde ursprünglich in Assembler für eine PDP-7 geschrieben. C wurde entwickelt, um den UNIX-Kernel auf einen anderen Rechnertyp (PDP-11) portieren zu können. Dazu wurde der Kernel in C komplett neu geschrieben.

Dabei wären wir schon bei einer wichtigen Eigenschaft: Portabilität. Ein in C geschriebenes Programm kann leicht auf eine andere Plattform (= Betriebssystem) portiert werden. Beim Portieren wird der Code so umgeschrieben, dass dieser auf der Zielplattform lauffähig ist.

C ist universell einsetzbar. In C wurden Betriebssystemkerne (Windows, UNIX), Spiele, Office-Anwendungen, Datenbankmanagementsysteme und vieles mehr geschrieben. Den Möglichkeiten sind keine Grenzen gesetzt!

Daneben gilt C als besonders maschinennah. In C lassen sich Anwendungen schreiben, wo sonst Assembler zum Einsatz käme. Microcontroller-Anwendungen, ganze Betriebssysteme und Treiber werden häufig in C geschrieben.

Beim Programmieren in C ist eine strenge Syntax (Grammatik) einzuhalten. C-Quellcode sieht, sofern der Programmierer nicht alles dagegen tut, sehr übersichtlich aus.

Zielgruppe dieses Tutorials

Dieses Tutorial richtet sich an Programmieranfänger. Wenn Sie also noch nie programmiert haben: Macht nichts! Wenn Sie aber bereits Programmiererfahrung haben, egal in welcher Sprache, hat das natürlich Vorteile. Am leichtesten haben Sie es, wenn Sie eine Sprache beherrschen, auf die C Einflüsse hatte (also die danach kam). Dazu gehören Java, C++, C#, PHP, JavaScript, Perl und einige andere. Sie werden dann mit dem Tutorial natürlich schneller fortfahren können.

Ansonsten: Nehmen Sie sich die Zeit, in Ruhe alles auszuprobieren. Versuchen Sie das Erlernte (zunächst: Gelesene) auch anzuwenden, indem Sie regelmäßig kleinere Programme schreiben. Je häufiger Sie etwas programmieren, desto größer ist auch der Lernfortschritt. Also: Probieren, probieren, probieren! Lesen allein reicht nicht!

Nötige Vorkenntnisse

So ganz ohne Vorwissen geht es auch hier nicht. Zum Glück. Schließlich wäre es nicht sinnvoll, jedes Mal bei Adam und Eva zu beginnen. Um sinnvoll programmieren (lernen) zu können, sollten Sie zumindest im Umgang mit Ihrem Betriebssystem, z.B. Windows oder Linux, vertraut sein. Daneben sollten Sie mit Suchmaschinen (Google oder was sich in den nächsten Jahren etablieren möge) umgehen können. Es kommt nämlich immer wieder vor, dass etwas nicht funktioniert, Links in diesem Tutorial nach einiger Zeit tot sind usw.

Was tun bei Fragen?

Was tun, wenn Sie im Laufe des Tutorials Fragen oder Probleme haben? Probieren Sie bitte zunächst, selbst eine Lösung zu finden bzw. selbst den Fehler in einem Programm zu finden. Stundenlanges Fehlersuchen kommt beim Programmieren hin und wieder vor. Die meisten Fehler lassen sich aber natürlich schneller finden. Eine kurze Pause hilft auch oft. Hier gilt es vor allem, Durchhaltevermögen zu beweisen und so lange dran zu bleiben, bis man den Fehler selbst gefunden hat. Das ist extrem wichtig und gehört zum Programmieren dazu!

Wenn Sie selbst keine Lösung gefunden haben, eine Pause und Google auch nichts geholfen haben, dann wenden Sie sich bitte an das Forum. Bevor Sie einen neuen Beitrag (Thread) schreiben, überprüfen Sie aber bitte auch hier, ob Ihre Frage nicht bereits an anderer Stelle beantwortet wurde (Suchfunktion!).

Bitte schreiben Sie mir keine E-Mails mit programmier-bezogenen Fragen! Ich leiste keinen E-Mail-Support. Ich habe leider weder die Zeit, auf jede programmiertechnische Frage persönlich eingehen, noch Fehler in fremden Programmen zu suchen.

Los gehts! Im nächsten Kapitel (Installation) werden Sie einen C-Compiler installieren und Ihr erstes Programm laufen lassen.

Zurück Nächstes Kapitel