Hi,
Could any explain the below code.

Code:
#include<stdio.h>
#include<string.h>

#define f(a,b) a##b

int main()
{
       printf("%d\n",f(1,2));
}
The output of the above code is 12, but if I try as below it gives error why is it so, and if any know about the tutorial on such things please let me know

Code:
#include<stdio.h>
int main()
{
        printf("%d\n", 1##2);
}