10
Alternativa standard al trucco ## __ VA_ARGS__ di GCC?
Esiste un problema ben noto con argomenti vuoti per le macro variadiche in C99. esempio: #define FOO(...) printf(__VA_ARGS__) #define BAR(fmt, ...) printf(fmt, __VA_ARGS__) FOO("this works fine"); BAR("this breaks!"); L'uso di cui BAR()sopra è in effetti errato secondo lo standard C99, poiché si espanderà a: printf("this breaks!",); Nota la virgola finale …