Einführung in C

Dieses Kapitel gibt einen konzeptuellen Überblick über Programmierung und die Rolle der Programmiersprache C. Es werden bewusst noch keine technischen Details behandelt.

1. Was ist Programmierung?

Definition.
Programmierung ist der Prozess, bei dem ein Mensch einer Maschine eine präzise, formale Abfolge von Anweisungen gibt, um ein bestimmtes Problem zu lösen.

Ein Programm ist dabei keine „Idee“, sondern eine exakt beschriebene Handlungsanweisung. Computer führen Programme deterministisch aus – sie interpretieren nichts.

Beispiel (abstrakt):
„Addiere zwei Zahlen, speichere das Ergebnis und gib es aus.“
Computer sind extrem schnell, aber vollständig ohne Verständnis. Deshalb müssen Programme eindeutig, vollständig und widerspruchsfrei sein.

2. Was ist ein Programm?

Ein Programm ist eine endliche Folge von Anweisungen, die von einem Computer ausgeführt werden können.

C ist eine Sprache, die sehr nahe an dieser maschinellen Ausführung arbeitet.

3. Was ist die Programmiersprache C?

C ist eine prozedurale, kompilierte Programmiersprache, die einen direkten Zugriff auf Speicher und Hardware erlaubt.

C wurde so entworfen, dass Programme:

C abstrahiert den Computer nur minimal. Der Programmierer trägt daher viel Verantwortung.

4. Wofür wird C verwendet?

C wird überall dort eingesetzt, wo Kontrolle, Effizienz und Nähe zur Hardware entscheidend sind.
Viele moderne Sprachen (C++, Java, Python) sind intern ganz oder teilweise in C implementiert.

5. Historischer Hintergrund

C wurde Anfang der 1970er Jahre von Dennis Ritchie bei Bell Labs entwickelt.

Ziel war es, ein Betriebssystem (UNIX) in einer portablen Hochsprache zu schreiben, statt ausschließlich in Assembler.

Diese Entscheidung prägte die gesamte moderne Informatik.

6. Warum wird C an der Universität gelehrt?

Wer C versteht, versteht, wie Programme auf Maschinenebene funktionieren.

7. Was C nicht ist

C ist keine moderne Komfortsprache.

Genau diese Einschränkungen machen C didaktisch wertvoll.

8. Aufbau dieses Kurses

Der Kurs führt schrittweise von grundlegenden Konzepten zu immer tieferen Mechanismen der Sprache C.

Ziel ist nicht nur „C zu benutzen“, sondern C zu verstehen.