--- /dev/null
+#include <stdio.h>
+
+#define ANSWER 42
+
+#define COUNTER counter++
+
+#define DONT printf("Don't"
+#define DO " do "
+#define THIS "this!\n");
+
+#define HELLO1(name) printf("Hello, %s\n", name)
+
+#define HELLO2(name) printf("Hello, " #name "\n")
+
+int main()
+{
+ int counter = 0;
+
+ printf("The answer is %d.\n", ANSWER);
+ printf("\n");
+
+ printf("The counter is %d.\n", COUNTER);
+ printf("The counter is %d.\n", COUNTER);
+ printf("The counter is %d.\n", COUNTER);
+ printf("\n");
+
+ DONT DO THIS
+ printf("\n");
+
+ HELLO1("Andy");
+ HELLO2(Andy);
+ HELLO2("Andy");
+
+ return 0;
+}