#define im #define

Gast #162631
Lesenswert?

Hallo zusammen!

Ich habe das Problem, dass ich ein fertiges Modul bekommen habe welches
erfordert, dass ich zum Anlegen von Variablen in einem bestimmten
Speicherbereich die folgende Sequenz einfügen muss:

#define XYZ
#include "Pragmaheader.h"
int Variable;
#define DEFAULT
#include "Pragmaheader.h"

Dabei wird dann durch die define-inlcude Sequenzen immer ein
entsprechendes #pragma eingefügt, welches den verwendeten
Speicherbereich definiert. Jetzt habe ich mir gedacht, dass ich diese
Sequenz auch durch ein Makro ersetzen kann. Dabei war ich allerdings
nicht erfolgreich. Hat von euch vielleicht einer eine Idee, wie man das
ganze etwas übersichtlicher gestalten kann?
Hier noch mein Makroversuch:

#define Makro(segment, var){\
#define segment             \
#include "Pragmaheader.h"   \
int var;
#define DEFAULT
#include "Pragmaheader.h"
}

Ich arbeite mit einem Renesas H8 Controller in Zusammenhang mit dem
IAR-Compiler.

Viele Grüße,

Ralf
Gast #162633
Lesenswert?

Achso, nochwas viel Grundlegenderes:

Deine ganzen #define und #include-Anweisungen liegen nicht am
Zeilenanfang und dürften daher vom Präprozessor völlig ignoriert
werden. Mit \ maskierst du schließlich jeden Zeilenumbruch, sodass für
den Präprozessor die #defines nicht mehr am Zeilenanfang stehen.

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