Main-Funktion
Du möchtest wissen, was es mit der Main-Funktion auf sich hat? Im Folgenden zeigen wir dir, was der Befehl Main in C macht.
Inhaltsübersicht
Main in C: Bedeutung
Die main-Funktion ist das Herzstück eines jeden Programms und wird auch häufig als Hauptfunktion bezeichnet. Sie muss in jedem deiner Projekte genau einmal enthalten sein. Das liegt daran, dass sie als einzige Funktion automatisch bei Programmaufruf ausgeführt wird. Damit ist dein Programm ohne sie nicht funktionsfähig, beziehungsweise nicht startbar. Wenn sie endet, gibt sie zudem deinem Betriebssystem oder der Software, die es gestartet hat, einen Rückgabewert zurück. Dieser ist null, wenn das Programm erfolgreich beendet, also ohne Fehler durchlaufen wurde. Sollten beim Ablauf Fehler aufgetreten sein, so gibt sie einen anderen Wert zurück.
Der Prozess, der das Programm aufruft, kann dann diesen Wert zur Bestimmung des Fehlers nutzen und gegebenenfalls eine passende Fehlermeldung ausgeben oder andere, geeignete Maßnahmen zur Fehlerbehandlung ergreifen. Die Main-Funktion ist also quasi wie ein Bote, der Nachrichten an alle beteiligten Parteien verteilt und sie von allen wichtigen Ereignissen in Kenntnis setzt. Dazu braucht sie nicht einmal Eingabeparameter. Das bedeutet, dass sie keine besonderen Angaben zum Verrichten ihrer Arbeit benötigt.
Bedeutung der einzelnen Codezeilen und Ausgabe der Parameter: Int main
Der Prototyp, den man auch als Bauplan für die Funktionen bezeichnen kann, sieht für eine Mainfunktion in etwa so aus:
Sowohl argc als auch argv in den Klammern werden verwendet, um sogenannte Kommandozeilenparameter zu übergeben.
An sich ist argc aber immer eine int-Variable, die um eins größer ist als die Anzahl der übergebenen Kommandozeilenparameter. Das liegt daran, dass es sich beim ersten übergebenen Parameter um den Namen des Programmes handelt, der ebenfalls abgespeichert wird.
Du kannst diesen und alle übergebenen Parameter auch mittels des Arrays argv ausgeben, da es sich dabei um eine Liste der Kommandozeilenparameter handelt, die ebenfalls den Programmnamen an der Stelle argv[0] speichert. Damit kannst du den ersten Parameter an der Stelle arg[1] abrufen.
Alle Befehle, die du in der Funktion später aufrufen willst, verpackst du zwischen den geschweiften Klammern, denn nur dieser Teil des Quellcodes wird nachher sicher ausgeführt. Hierher kommen aber auch deine Funktionsaufrufe und Deklarationen, sofern du sie in dieser Funktion benötigst.
Bei einem gut geschriebenen Programm ist die Main-Funktion so klein wie möglich gehalten. Das kommt dadurch zu Stande, dass sie Prozesse nur in Gang setzt und nicht selbst ausführt. Sie delegiert also Aufgaben an andere Funktionen, die diese dann bearbeiten.
Anwendung Main C
Angewandt sieht das Ganze dann so aus: Rufst du dieses kompilierte Programm mit den Kommandozeilenparametern a und b auf, so erhältst du folgende Ausgaben:
Das Programm funktioniert also tadellos. Wie du im Quellcode sehen kannst, geben wir den return-Value als letzten Befehl in der Funktion an. Er erstattet also Rückmeldung und beendet die Funktion gleichzeitig. Darüber liegen die Ausgabebefehle und der Funktionskopf, der unsere Parameter enthält.
Da du nun weißt, wie so eine Funktion aussieht, kannst du dein Programm schonmal starten und hast damit den Grundstein gelegt, um mit dem Programmieren zu beginnen.