Hallo, Welt! in C
Fast jedes Programmierbuch und jedes Tutorial beginnt auf dieselbe Weise: die Worte "Hello, World!" ausgeben und aufhĂśren. Die Tradition geht zurĂźck auf Brian Kernighan, der sie 1972 in einem internen Bell-Labs-Tutorial fĂźr die Programmiersprache B verwendete, und sie wurde universell, nachdem er und Dennis Ritchie sie als allererstes Beispiel in The C Programming Language (1978) einsetzten â dem Buch, das C fĂźr eine ganze Generation von Programmierern definierte. Jahrzehnte später ist es immer noch das erste Programm, das die meisten Menschen in einer neuen Sprache schreiben, C eingeschlossen.
Das Programm
#include <stdio.h>
int main()
{
printf("Hello, World!\n");
return 0;
}
#include <stdio.h> bindet die Deklaration von printf aus der
C-Standardbibliothek ein. main ist die Stelle, an der jedes C-Programm zu
laufen beginnt, und return 0 teilt dem Betriebssystem mit, dass das
Programm ohne Fehler beendet wurde. printf schreibt sein Argument auf die
Standardausgabe â das \n am Ende bewegt den Cursor danach einfach in eine
neue Zeile.
Kompilieren
Auf einem Rechner mit installiertem C-Compiler ist dieses Programm nur einen Befehl vom Laufen entfernt:
cc hello.c -o hello
./hello
cc (oder gcc/clang, je nach System) liest hello.c, Ăźbersetzt es in
Maschinencode, linkt die Standardbibliothek ein, die printf bereitstellt,
und schreibt eine ausfĂźhrbare Datei namens hello. Das AusfĂźhren dieser
Datei gibt die Zeile aus und beendet sich â dieselben drei Schritte, die
jedes C-Programm durchläuft, ob es vier Zeilen lang ist oder vier
Millionen.
Selbst ausprobieren
Bearbeite den Code oben und drĂźcke "Compile & Run" â ändere den String,
fĂźge ein zweites printf hinzu, oder baue eine Schleife ein.
Fazit
An Hello World ist nicht viel dran, und das ist der Punkt: Es durchläuft die gesamte Kette vom Quellcode zum laufenden Programm, ohne dass sonst etwas im Weg steht. Sobald es funktioniert, sind auch der Compiler, die Standardbibliothek und die Art, wie der Code ausgefßhrt wird, alle als funktionierend bestätigt.