[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: smaller f00f.c
Adam says:
> Hey, challenge is on:
>
> main(){int i=0xc8c70ff0;void (*f)()=&i;f();} /* f00fies 44 char */
> main(){((int(*)())"\360\017\307\310")();}
> main(){int i=0xc8c70ff0,(*f)()=&i;f();}
> main(i){int(*f)()=&i;i=0xc8c70ff0;f();}
> main(i){i=0xc8c70ff0;((int(*)())&i)();}
> (*f)();main(i){f=&i;i=0xc8c70ff0;f();}
> (*f)()="\360\017\307\310";main(){f();} /* 38 chars */
>
> Compiled with gcc.
long main=0xc8c70ff0; /* also gcc; 21 chars, and not my invention */
Without the "long" you get a warning, but it compiles anyway... 16 chars.
Jim Gillogly
[email protected]