Macro und #include
-
Hallo,
ich möchte den Pfad eines Headerfiles als Macro definieren, da ich auf verschiedenen Rechnern arbeite und die Pfade schnell in vielen Files ändern muss. Folgendes funktioniert nicht so recht:
#define MYDIR/headerfile.h /home/paul/myfile.h #include "MYDIR/headerfile.h"Danke für Hilfe.
-
in einem String wird ein Macro nicht expandiert. Überleg dir am besten mal ein Konzept um Headerdateien gleich zu benennen (Pfade kann man über Compileroptionan anpassen). Ansonsten wäre folgendes wohl praktisch
#ifdef A #define HEADER_H "foo/header.h" #else #define HEADER_H "bar/foo.h" #endif #include HEADER_H
-
außerdem ist
MYDIR/headerfile.hkein gültiger bezeichner (auch nicht für ein makro) - eher so wie rüdiger vorschlägt, underscore statt schrägstrich.
-
Außerdem paßt man die Pfade auch in den Projektoptionen (beim gcc mittel -L) an, nicht in den einzelnen Source-Dateien.