#define PI 3.14 //#undef PI #ifndef PI #error "Not define PI ..." // compile error #endif #define DISP(a) printf("Parameter is " #a "\n"); #define SQUARE(x) ((x)*(x)) #include <stdio.h> int main() { printf("Date: %s\n", __DATE__); printf("Time: %s\n", __TIME__); printf("File: %s\n", __FILE__); printf("Line: %d\n", __LINE__); printf("STDC: %d\n", __STDC__); // defined as 1 when the compiler complies with the ANSI standard DISP(TEMP); // Parameter is TEMP printf("Square of %d is: %d\n", 10, SQUARE(10)); return 0; }