Dein erstes Programm
Willkommen im C-Kurs! C ist eine der ältesten Programmiersprachen, die noch weit verbreitet sind: Sie entstand Anfang der 1970er-Jahre. Es ist eine kleine Sprache, und in ihr geschriebene Programme laufen sehr schnell. Deshalb sind große Teile von Betriebssystemen wie Linux und Windows in C geschrieben, ebenso die Software in Mikrocontrollern, den winzigen Computern in Waschmaschinen, Autos und Spielzeug. Die Sprache C++ ist aus C hervorgegangen, und viele andere Sprachen, etwa Java und JavaScript, haben viel von ihrer Schreibweise übernommen. Was du hier lernst, hilft dir also auch bei ihnen.
In diesem Kurs lernst du, Programme zu schreiben, die rechnen, Entscheidungen treffen, Arbeit wiederholen und mit Zahlenlisten und mit Text umgehen. Du teilst Programme in kleinere Teile auf, die Funktionen heißen, siehst, wie C mit dem Speicher des Computers arbeitet, und schreibst am Ende ein kleines eigenes Projekt. Aber zuerst kommt dein allererstes Programm.
Ein Programm ist eine Folge von Anweisungen: Befehlen, die der Computer nacheinander von oben nach unten ausführt. Ein Computer versteht C allerdings nicht direkt. Zuerst muss ein Compiler das Programm verarbeiten: Er prüft, ob das Programm richtig geschrieben ist, und übersetzt es in Befehle, die der Computer versteht. Auf dieser Seite heißt der Compiler Clang. Wenn du auf Ausführen klickst, kompiliert (übersetzt) die Seite zuerst dein Programm und führt es dann aus.
Das hier ist ein ganzes Programm, das einen Gruß ausgibt:
#include <stdio.h>
int main(void) {
printf("Hallo!\n");
return 0;
}Das gibt Folgendes aus:
Hallo!Was die einzelnen Teile bedeuten:
#include <stdio.h>fügt die Header-Dateistdio.h(Standard Input/Output) zum Programm hinzu. Sie gehört zur Standardbibliothek: der Sammlung fertiger Werkzeuge, die jeder C-Compiler mitbringt. Diese Datei bringtprintfmit, und ohne diese Zeile würde der Compiler es nicht kennen.int main(void) { }ist der Hauptteil des Programms, die Funktionmain. Hier beginnt das Programm: Es führt die Anweisungen zwischen den geschweiften Klammern{und}von oben nach unten aus. Jedes C-Programm hat genau einemain. Wasintund(void)bedeuten, erfährst du in der Lektion über Funktionen. Betrachte es vorerst als festen Rahmen, in den du deinen Code schreibst.printf("Hallo!\n");gibt einen Text aus. Der Text steht in doppelten Anführungszeichen", die zeigen, wo er beginnt und wo er endet. Programmierer nennen einen Text in Anführungszeichen eine Zeichenkette (englisch string). Das\nan ihrem Ende wird nicht ausgegeben: Es beendet die Zeile. Mehr dazu in der nächsten Übung.return 0;beendetmainund damit das ganze Programm. Die0sagt dem Computer, dass das Programm ohne Probleme zu Ende gegangen ist.- Das Semikolon
;beendet eine Anweisung, so wie ein Punkt einen Satz beendet. Jede Anweisung inmainhat eins. Die Zeilen#include,int main(void) {und}sind keine Anweisungen und haben deshalb keins.
C unterscheidet Groß- und Kleinbuchstaben, deshalb funktionieren Printf oder PRINTF nicht. Bei einem solchen Fehler oder einem fehlenden Semikolon führt der Compiler das Programm nicht aus, sondern zeigt unter der Ausgabe eine rote Fehlermeldung. Keine Sorge: Prüfe die Zeile, behebe den Fehler und führe das Programm erneut aus. Später in dieser Lektion lernst du, diese Meldungen zu lesen.
Noch etwas: Die Programme auf dieser Seite können nur in die Ausgabe schreiben. Sie können nicht lesen, was du auf der Tastatur eingibst, deshalb steht alles, womit sie arbeiten, direkt im Programm.
So schreibst du es:
Anweisungen
- 1
Im Editor steht das Programm aus dem Beispiel. Klicke unter dem Editor auf Ausführen und sieh dir die Ausgabe an (auf dem Handy unter „Ausgabe“). Der erste Start kann ein paar Sekunden dauern, während der Compiler geladen wird.
Ändere dann den Text in den Anführungszeichen so, dass das Programm die traditionelle erste Nachricht jedes Programmierers ausgibt:
Hallo, Welt!Lass das
\nam Ende des Textes stehen. - 2
Füge unter dem ersten
printfein zweites hinzu, das deinen Namen in der nächsten Zeile ausgibt. Schreibe es über die Zeilereturn 0;, denn dort endet das Programm, und Anweisungen darunter würden nie ausgeführt. Vergiss nicht die Anführungszeichen, das\nund das Semikolon am Ende.