Ayuda de definición de macro C (*(byte*)&(##x)+1)
### se maneja así en el reemplazo de macros:
Cada ### se eliminará, junto con los espacios en blanco en ambos lados.
### no es un conectivo. Como dijiste, ###"generalmente" se usa como conectivo. Ten en cuenta que es "generalmente", que es su uso típico. Este uso también se basa en esta característica suya.
#define A(M) M ## 87
int i = A(19); así, hay espacios antes y después de ###, después del reemplazo final de la macro; , es i = 1987.