GNU's cpp allows you to turn macro parameters into strings like so
#define STR(x) #x
Then, STR(hi)
is substituted with "hi"
But how do you turn a macro (not a macro parameter) into a string?
Say I have a macro CONSTANT with some value e.g.
#define CONSTANT 42
This doesn't work: STR(CONSTANT)
. This yields "CONSTANT"
which is not what we want.