C-Programmierung

Modulschema

Modulgraph | | Modultechnik

Standard-Schema eines Programms mit einem Hauptmodul und einem zusätzlichen Modul M:

Main Module:

#include <stdio.h>

#include "M.h" /* include header M */

int main()
{
   int x;

   /* call function in module M */
   x=factorial(5);

   /* output result */
   printf("%d\n", x);
}

Header M:

#ifndef M_H /* guard for header M */
#define M_H

int factorial(int n); /* prototype */

#endif

Modul M:

/* implementation of prototype */
int factorial(int n)
{
   if (n>1) return(n * factorial(n-1));
   else return(1);
}

Will man Funktionen eines Moduls A in Modul B benutzen, so verwendet man die entsprechende Header-Datei des Moduls A, welche die Funktionsprototypen der in Modul A enthaltenen Funktion enthält. Durch die Inklusion in den Quellcode von B werden die entsprechenden Funktions-Prototypen in B bekannt gemacht. Die Inklusion geschieht mittels der Präprozessor-Direktive #include, welche den Text der referenzierten Datei in den aktuellen Text kopiert.

Anmerkung: die referenzierte Header-Datei wird in Anführungszeichen geschrieben. Spitze Klammern werden für vorinstallierte System-Header verwendet, z.B.: #include <stdio.h>. Unter Unix erfolgt die Vorinstallation üblicherweise in /usr/include/ oder /usr/local/include/.

Zusatzhinweis: Die Prototypen werden in sogenannten Guards eingeschlossen um Mehrfach-Definitionen durch Mehrfach-Inklusionen zu vermeiden.

Modulgraph | | Modultechnik

Options: