Ausgliederung Funktionen in externe Datei ?

Gast #39279
Lesenswert?

Hallo,
ist es möglich mehrere Funktionen in eine externe Datei auszugliedern, 
die dann bei Compilieren automatisch eingebunden werden? (z.B. alle 
Funktionen zur LCD Ansteuerung)
Wäre nicht schlecht, da dadurch das Programm sehr viel 
kleiner/übersichtlicher wäre.
Vielen Dank für Eure Hilfe.

Gruß
Steffen
Gast #39280
Lesenswert?

Man strukturiert das ganze in *.c und *.h (Headerfiles)

in den H Files stehen die Funktionsdeklarartionen, in den c files die 
implementationen.

z.B.

foo.h

/* sample h file */

bool foo();

/* end of sample h file */


foo.c

/* sample c file */

#include "foo.h"

bool foo() {
return false;
}


Die main.c sieht dann so aus

/* sample main.c */

#include "foo.h"

main () {
    foo();
}

Ich hoffe ich hab nix übersehen jetzt auf die schnelle.
Gast #39281
Lesenswert?

Es macht sinn, die Header-Files in einen Include-Guard einzuschließen:

#idndef MYHEADERFILE_H
#define MYHEADERFILE_H
//hier kommt der inhalt der header-datei
#endif // MYHEADERFILE_H

dies verhindert fehler beim mehrfachen includieren.
Gast #39282
Lesenswert?

U. U. lohnt es auch, die Compilate der einzelnen Funktionen
in einer Bibliothek zusammenzufassen.  Der Linker holt sich
dann nur die Objektdateien aus der Bibliothek, in denen auch
etwas referenziert worden ist.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren