自分自身を出力するプログラム
#define A(X) B(X) #define B(X) #X #define C "#define A(X) B(X)\n#define B(X) #X\n#define C " #define D main(){puts(C A(C)E A(E)"\nD");} #define E "\n#define D main(){puts(C A(C)E A(E)\"\\nD\");}\n#define E " D
特徴
printfを使っていないので、コンパクトで、高速に動作します。w