Programmieren – Die Grundlagen von C: Hallo Welt

Wer wollte nicht schon einmal ein eigenes Programm schreiben?
Um einen ersten Einblick über die Grundlagen von Programmiersprachen zu geben habe ich beschlossen, angefangen bei der Sprache C, eine neue Kategorie mit Inhalten zu füllen.
Die Programmiersprache C ist eine der am weitest verbreitetsten Programmiersprachen weltweit und auch einer der älteren Sprachen.
Dank des ebenfalls in C geschriebenen Kernels bietet sie unter Linux sogar über die sogenannten Header Dateien eine Schnittstelle an.
Viele andere Programmiersprachen sind von dem Syntax her C ähnlich.

Der Datentyp int

In der Programmiersprache C gibt es wie bei allen Sprachen mehrere Datentypen, der wichtigste ist hierbei die Zahl.
Genauer die ganze Zahl im englischen wie auch im C Syntax wird dies als Integer bezeichnet und im Quellcode das Kürzel int verwendet.
Dies bedeutet dass eine Variable vom Typen int z.b. den Wert 1, 2, 3 etc. aber nicht 1.5 annehmen kann.
In C wird praktischerweise vieles als Integer behandelt was einem eine einfache Methode zum verarbeiten von Daten bietet.
So kann man zum Beispiel einen Buchstaben auch als Zahl verwenden.

Die Main Funktion

Um überhaupt ein Programm zu erschaffen braucht es bei C immer die sogenannte Main Funktion.
Sie wird bei dem ausführen eines Programms als erste aufgerufen und im Idealfall bildet sie auch den Abschluss.
Im deutschen würde man so etwas als Hauptfunktion bezeichnen.

Diese Funktion ist von dem bereits erwähnten Datentypen int und wird folgendermaßen definiert.
Zuerst wird der Typ der Funktion angegeben (int) danach kommt der Name (main) und in den Klammern können noch Parameter angegeben werden die beim aufrufen dieser übergeben werden.
In den geschweiften Klammern steht der Quellcode der beim aufrufen ausgeführt werden soll.
Dabei bedeutet die Zeile return 0; , dass am Ende die Zahl 0 zurückgegeben werden soll.
Hierbei sei gesagt, dass in der Main Funktion bei Rückgabe von 0 dem Betriebssystem mitgeteilt wird, dass das Programm erfolgreich ausgeführt wurde und der Speicher geleert werden kann.

int main()
{
	return 0;
}

Bibliotheken

Die Bibliotheken funktionieren bei Programmiersprachen fast genauso wie bei Büchern.
In Büchereien findet man in den zahlreichen Büchern die Informationen die man gerade braucht sodass man diese nicht selber recherchieren muss.
Um eine häufig gebrauchte Aufgabe in einem Programm nicht jedes mal von vorne zu programmieren benutzt man Bibliotheken in denen einzelne Funktionen für diese Aufgaben bereits enthalten sind.

Jede Bibliothek besteht dabei aus mehreren Headerdateien in denen wiederum die Funktionen und Datentypen deklariert werden.
Nach dem einbinden der einzelnen Headerdateien über den Syntax #include kann man die in ihnen deklarierte Funktionen verwenden.
Bei Standardbibliotheken werden die Dateinamen zwischen den spitzen Klammern < und > geschrieben.
Dies weist den Compiler an die Headerdatei in den ihm bekannten Bibliotheksverzeichnissen zu suchen.
Falls man eigene Headerdateien im jeweiligen Projektverzeichnis verwenden möchte, nutzt man Anführungszeichen.

Die wichtigsten Bibliotheken unter C sind die von C selbst, in ihnen stehen all die Funktionen und Datentypen die den Syntax von C ergeben.
Um sie einzubinden verwendet man folgenden Quelltext welcher ganz oben stehen muss.
Dabei ist stdio.h die Standardbibliothek für Ein- und Ausgabe und muss bei fast jedem Programm eingebunden werden.
In ihr ist zum Beispiel die Funktion printf, mit der man Text ausgeben kann, enthalten.

#include <stdio.h>

Ausgeben von Text

Um Text in die Konsole auszugeben wird die Druckfunktion (printf) aus der Bibliothek stdio.h verwendet.
Mit ihr kann man nicht nur Text ausgeben sondern über sogenannte Platzhalter in dem auszugebenden Textes auch Werte von Variablen jeden Typs einfügen.
Diese Platzhalter werden in dem Text über das Prozentzeichen gefolgt von dem jeweiligen Buchstabens des Datentyps festgelegt.
Nach dem ersten Parameter, welcher den auszugebenden Text darstellt, wird für jeden Platzhalter der reihe nach Parameter mit den entsprechenden Variablen angelegt.
Über bestimmte Zeichenabfolgen, sogenannte Escapesequenzen, können Textformationen wie beispielsweise ein Zeilenumbruch (\n) in dem Text untergebracht werden.

printf(„Dies ist der Text aus Zeile: %i\n“, 0);
Platzhalter Datentyp
%i Integer (Zahl)
%c Char (Zeichen)
%s String (Text)

Das erste Programm: Hallo Welt

Klassisch ist dass Beispielprogramm Hallo Welt, dank des simplen Aufbaus ist jedoch für diesen Zweck ideal geeignet.
Dafür werden die zuvor erwähnten Elemente verwendet welches in dem nachfolgenden Beispielcode aufgeführt wird.
Diesen speichert man in der Datei namens main.c wobei der Dateiname natürlich beliebig gewählt werden kann wobei die Endung .c notwendig ist um dem Compiler später die verwendete Programmiersprache mitzuteilen.

#include <stdio.h>

int main()
{
	printf(„Hallo Welt!\n“);
	return 0;
}

Erstellen des Quellcodes

Um aus C Quelltext ein Programm zu erstellen braucht es 2 Arbeitsschritte (kompilieren und linken), diese jedoch werden meist beide von dem sogenannten Compiler abgearbeitet.
Dabei wird der Code in Menschen lesbarer Textform zu eine vom Betriebssystem ausführbare Binärdatei verwandelt.
Diese besteht aus Einsen und Nullen welche dem Computer im Grunde Anweisungen geben.

Unter Linux verwendet man am besten den GNU-Compiler gcc welcher in den meisten Fällen entweder bereits vorinstalliert oder in den Paketquellen enthalten ist.
Man findet ihn in dem Paket gcc.

Um nun mit dem Compiler den Quellcode zu kompilieren wechselt man mit einem Terminal in das Verzeichnis in dem die zu kompilierende Quelldatei liegt.
Danach führt man den folgenden Befehl aus.

gcc -o helloworld main.c
Parameter Bedeutung
gcc Aufruf des GNU-Compilers.
-o helloworld Der Buchstabe o steht für output.
Nach einem Leerzeichen folgt der Dateiname welcher für die kompilierte Datei benutzt werden soll.
Im Beispiel wird die Datei helloworld erstellt.
main.c Name der zu kompilierenden Datei.
Im Beispiel wird die Binärdatei aus der Quelldatei main.c erstellt.

Legende von den Fachwörtern

Da man beim Programmieren eine sehr fachbezogene Thematik hat, gibt es für alles immer ein Fachwort.
Um Neulinge nicht gleich ins kalte Wasser zu stoßen findet man in diesem Abschnitt eine kurze Erklärung von Wörtern die man zum Verständnis des Artikels braucht.

Funktionen sind im Grunde Aufgaben, beispielsweise kann eine Funktion zum addieren oder drucken existieren.
Diese können beliebig oft aufgerufen werden ohne immer wieder ihren Quelltext aufschreiben zum müssen.

Parameter sind Angaben welche dynamisch, also nicht immer gleich, sind.
Funktionen enthalten Parameter wie beispielsweise die Funktion addiere den Parameter A und B hat.
Die beiden Parameter A und B werden addiert und dann zurückgeben.

Ausblick

Nächstes mal geht es um den zweiten wichtigen Datentypen Char und dass einlesen von Text mit einem weiteren Beispiel.

Fazit

Durch wenig Aufwand ist man schnell zu einem ersten Programm gekommen und hat dabei erste Grundlagen von C gelernt.
Da dies längst noch nicht alles an den Grundlagen darstellt, möchte ich diese in späteren Artikeln behandeln.

Nachtrag:
Dank eines aufmerksamen Lesers habe ich die, natürlich, falsche Bezeichnung zu Datentyp korrigiert.

Veröffentlicht von

Marc Volker Dickmann

Schreibt über alles was ihn Interessiert und beschäftigt. Startet regelmäßig neue Projekte.

8 Gedanken zu „Programmieren – Die Grundlagen von C: Hallo Welt“

  1. Gut gemeinte Kritik: Rechtschreibfehler sind menschlich – wenn „int“ und „char“ jedoch in diesem Kontext (mehrfach) als „Dateitypen“ bezeichnet werden, stellen sich mir die Nackenhaare auf. Insbesondere bei den „Grundlagen“ ist imho etwas mehr Liebe zum Detail angebracht.

  2. Ich wollte mich erst einmal für das Tutorial bedanken. Ich finde es toll, dass Du Dir die Mühe gemacht hast es zu schreiben. Über eine Fortsetzung würde ich mich freuen. Du solltest vielleicht noch erklären, wie man das Programm ausführen kann.

  3. Ich finde wirklich super, dass du dir soviel Arbeit machst, und bitte versteh das nicht direkt als Kritik daran, aber denkst du nicht, dass es schon wirklich genug derartige Einstiegstutorials für C gibt?
    Bist du wirklich willens, das Rad neu zu erfinden?

  4. Alles ganz gut und schön, aber hochtrabend !!! Wie wäre es denn mal mit eine kurzen, klaren Version, im Kochbuchstiel ? Ihr seht euch wohl gerne schreiben, was ? Nach dem Motto: nur wer viel schreibt, ist auch wer. Quatsch ! In der Kürze liegt die Würze !!! In diesem Forum wird ein fürchterliches Kaudawelsch geschrieben, aber auf eine einfache kurze Frage findet man hier keine Antwort ! Gebt doch mal in der Suche ein: Ausführbare Datei schreiben. Ja, da kommt absoluter Mist raus,aber keine kurze Erläuterung, wie man das macht. Die meisten hier doch nur verklemmte Schreiberlinge, die durch viel Text glänzen wollen. Sachliche klare mit Beispiel-Zeilen kurze Infos habt ihr fast alle nicht drauf. Dem Himmel sei’s gedankt, das ihr beruflich keine Bedienungsanleitungen schreiben müsst. Bei dem geistigen Müll würde jede Bedienungsanleitung sofort zum Weltuntergang führen !

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.