[preprocesseur] ## restant
Bonjour,
J'ai (encore) un peu problème de macro
dans mon code c j'ai mis une inclusion comme ceci :
Code:
1 2 3 4 5 6 7
| /* ... */
typedef unsigned char* puchar;
#define ELEMENT puchar
#include "fichier.c"
#undef ELEMENT
/* ... */ |
avec fichier.c contenant ceci
Code:
1 2 3 4 5 6
|
typedef struct _CELL_##ELEMENT {
ELEMENT elt;
struct _CELL_##ELEMENT next;
} CELL_##ELEMENT;
typedef CELL_##ELEMENT* LISTE_##ELEMENT; |
le hic, c'est qu'il reste des ## "parasites" après passage du préprocesseur
le ???.i
Code:
1 2 3 4 5 6 7 8 9 10
|
typedef unsigned char* puchar;
# 1 "list.c" 1
typedef struct _CELL_##puchar {
puchar elt;
struct _CELL_##puchar next;
} CELL_##puchar;
typedef *CELL LISTE_##puchar; |
quelqu'un sait-il comment s'en débarasser ? (si c'est possible bien sûr :oops:)
je pense que le problème vient du typedef qui aurait du me permettre d'avoir des types d'ELEMENT avec des espaces et des étoiles :?