#define Reihenfolge

Gast #925729
Hallo,

ich habe in meinem Projekt mehrere .h Dateien, in denen hin und wieder 
per #define was definiert wird, was auch für andere .h Dateien wichtig 
ist. Nun hab ich das Problem, dass wohl das #define in einer Datei zu 
spät vom Compiler ausgewertet wird, sodass es nicht mehr für die andere 
.h. Datei verwendet wird. Kann ich die Reihenfolgt, in dem die .h 
Dateien ausgewertet werden irgendwie beeinflussen?

Gruß

Manuel
Gast
Hallo,

zuerst einmal muss man verstanden haben, was mit den #include eigentlich 
passiert. Beim #include wird der Inhalt der h-Datei in der c-Datei an 
die Stelle des #includes gesetzt. Somit ist die Reihenfolge der 
h-Dateien dafür verantwortlich, wie die #defines sich in der c-Datei 
befinden.

Gruß sch_michael
Gast
Wenn du in einem header-file #defines verwendest, die in einem anderen 
header-file definiert sind, kannst du auch das zweite header-file am 
Anfang des ersten includieren. Dann ist die Reihenfolge im .c-File 
wieder egal.

Oliver

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.