A ## operator between any two successive identifiers in the
replacement-list runs parameter replacement on the two identifiers
(which are not macro-expanded first) and then concatenates the result.
This operation is called "concatenation" or "token pasting".
##
is used to concatenate whatever is before the##
with whatever is after it. It is used for concatenation.You can check the reference for details