Forum: Compiler & IDEs Modularer Aufbau


von tobias (Gast)


Lesenswert?

Hallo,

habe gerade meine Projektarbeit abgeschlossen und den C Code von einem 
Dozenten abnehmen lassen, zwecks Verbesserungsvorschlägen. Er meinte 
alles prima, allerdings würde er gerne sehen, dass ich das Programm noch 
modularer aufbaue, heißt,ich soll alle Funktionen die ich jetzt nach der 
Main Function, also in einer .c Datei stehen habe in eine seperate Datei 
packen, so dass die Funktionen außerhalb der Main in einer extra Datei 
liegen. Ich arbeite mit WinAVR und arbeite noch nicht lange mit C. Kann 
mir jemand sagen, wie ich das anstellen soll und ob ich dass überhaupt 
mit WinAVR hinbekomme?
Vielen Dank.

von M. I. (Gast)


Lesenswert?

Die separaten Dateien (weiß ja nicht wieviele Funktionen du in wie viele 
Dateien packen willst) müssen auch alle die Endung .c haben. Darein 
kopierst du den ausgelagerten Code. Dann schreibst du die 
Funktionsprototypen für die in einer .c-Datei enthaltenen Funktionen in 
eine Datei mit der Endung .h
(Headerdatei). Der Name der Datei vor dem Punkt muss derselbe sein.

Zum Beispiel hast du dann:

main.c (Hauptprogramm)
functions.c(Unterprogramme)
functions.h (Prototypen der Unterprogramme)

Nun bindest du in main.c einfach noch die functions.h ein, per include:

#include "functions.h"

Fertig.

von Oliver (Gast)


Lesenswert?

Fast.

Die .c-Dateien müssen noch ins makefile eingetragen werden, sonst 
meckert der linker. Am einfachsten geht das mit dem Programm MFile.

Oliver

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.