# Define string (x) #x
const char * str = STRING(test _ STRING); The content of str is "test_string", which means that # will put the symbol after it.
Add double quotation marks directly.
# # symbol connects two symbols to generate a new symbol (lexical hierarchy), for example:
# Define symbol (x) INT_##x
Int symbol (1); The macro will become: int int _1after expansion;