Write a C macro PRINT(x) which prints x
At the first look, it seems that writing a C macro which prints its argument is child's play.  Following program should work i.e. it should print x c #define PRINT(x) (x) int main() { printf("%s", PRINT(x)); return 0; } But it would issue compile error because the data type of x, which is taken as