What can and can't macros do? Not all compilers agree.
Demonstrate how to write a simple max() preprocessor macro that takes two arguments and evaluates to the one that is greater, using normal < comparison. What are the usual pitfalls in writing such a macro?
What can a preprocessor macro not create? Why not?