Also hier sind einige Makros ich erstellt haben:C: Erweitern Sie Makro mit Token Einfügen
#define MODULE_NAME moduleName
#define MODULE_STRUCT MODULE_NAME ## _struct
#define MODULE_FUNCTION(name) MODULE_NAME ## _ ## name
Nach diesen Definitionen, würde ich die folgenden Erweiterungen gern geschehen:
MODULE_STRUCT --> moduleName_struct
MODULE_FUNCTION(functionName) --> moduleName_functionName
Allerdings, wenn ich Fügen Sie die Token-Pasting-Operatoren hinzu, die Erweiterung von MODULE_NAME in MODULE_FUNCTION und MODULE_STRUCT findet nicht mehr statt ... Es scheint MODULE_NAME als eine literale Zeichenfolge zu betrachten, wenn Sie sie zusammenfügen.
Gibt es einen Weg um dies?