view quine.c @ 5264:58598fd1266a

<gamemanj> quines/c > quine.c
author HackBot
date Mon, 02 Mar 2015 18:57:09 +0000
parents
children
line wrap: on
line source

#include <stdio.h>
char*a="#include <stdio.h>\nchar*a=\"@\";\nvoid main(){char*b=a;for(;(*a)!=0;a++){switch(*a){case '@':if(!(*b))putchar('@');for(;(*b)!=0;b++){switch(*b){case '\"':case '\\\\':putchar('\\\\');putchar(*b);break;case '\\n':putchar('\\\\');putchar('n');break;default:putchar(*b);}}break;default:putchar(*a);}}}";
void main(){char*b=a;for(;(*a)!=0;a++){switch(*a){case '@':if(!(*b))putchar('@');for(;(*b)!=0;b++){switch(*b){case '"':case '\\':putchar('\\');putchar(*b);break;case '\n':putchar('\\');putchar('n');break;default:putchar(*b);}}break;default:putchar(*a);}}}