if for example i have :
#define PRINT(x) fprintf(stderr, x);
and in code i append it :
PRINT(("print this"))
output is :
[print this]
if i append it :
PRINT(("print %s", "this"))
output is :
[this]
could someone explain me why it receives just the “this” argument and not the whole string ?
becomes:
which is equivalent to:
However, variadic macros (from C99) work: