mehrfachdefinition aus dem wege gehen in C..

Hallo,
ich hab hier 3 Quelltextdatein: pasc.c, jules.c, siggi.c
und 1 Header: rennmaus.h.
In rennmaus.h ist eine globale Variable definiert die in allen 3 Quelltextdatein benötigt wird. Wenn ich nun die rennmaus.h in pasc.c, jules.c und siggi.c einbau hab ich nun die probleme.
wenn ich "gcc -c *.c" mach ist alles ok. aber sobald ich "gcc -o mäusejagt siggi.o pasc.o jules.o" mach kommt eine Fehlermeldung wie zb "Mehrfachdefinition der globalen Var sowieso...".

Ich versuchte auch die rennmaus.h nicht einfach mit #include "rennmaus.h" einzufügen sondern mit:

#ifndef RENNMAUS_H
#define RENNMAUS_H "rennmaus.h"
#include RENNMAUS_H
#endif

und das in allen Quelldatein. Leider ohne Erfolg. Die Fehlermeldung ist immer die selbe. Hat einer von euch einen Plan was ich falsch mache?

PS: Ja, ich könnte auch die .h in siggi.c einfügen und siggi.c in jules.c usw... das will ich aber nicht unbedingt .
 
Wenn ich dich richtig verstehe hast du den Mehrfachinkludierungsschutz in die *.c Dateien geschrieben, der gehört doch aber in den Header.

schreib in rennmaus.h einfach:

#ifndef RENNMAUS_H
#define RENNMAUS_H

/* Code */

#endif

vielleicht lags ja daran ... bin mir nich sicher
 
In rennmaus.h?

kann nicht in rennmaus.h

#ifndef RENNMAUS_H
#define RENNMAUS_H "rennmaus.h"
#include RENNMAUS_H
#endif

schreiben. rennmaus.h in rennmaus.h includieren kann ja nicht gutgehen
 
Zurück
Oben