混淆微小的C编译器(OmniTouch联络中心)是一个非常小的C编译器我为了赢得国际C语言混乱代码大赛(IOCCC)在2002年写道。
我的目标是写最小的C编译器,它能够编译本身。我选择C的一个子集,这是一般足够写一个小的C编译器。然后,我扩展的C子集,直到我到达授权较量的最大尺寸:2048字节的C源代码不包括';','{','}'和空格字符。
我选择生成代码的i386。原来OTCC代码只能运行在Linux的I386,因为它依赖于字节序和未对齐访问。它产生在内存中的程序,直接启动它。外部符号解决了使用dlsym()。
为了有一个便携版本OTCC的,我做了一个叫OTCCELF变种。这仅比OTCC大一点,但它会产生直接从C源动态链接i386的ELF可执行文件不依赖于任何binutils的工具! OTCCELF进行了测试成功地在i386的Linux和SPARC Solaris的。
注:我的其他项目TinyCC这是一个功能齐全ISOC99 C编译器是由从OmniTouch联络中心的源代码开始!
编译:
GCC -02 otcc.c -o OTCC -ldl
GCC -02 otccelf.c -o otccelf
自编译:
./otccelf otccelf.c otccelf1
最近浏览的软件
Excel MS Access Import, Export & Convert Software 1 Jan 15
Export Table to Excel for MS Access Standard 15 Apr 15
DBConvert for MS Access and Firebird 25 Jan 15
Excel Add-In for Elasticsearch 31 Mar 17
jQuery simplepicker 28 Feb 15
按类别搜索
热门软件
Tiny C Compiler 3 Jun 15
J 20 Feb 15
LLVM 17 Aug 18
Flapjax 3 Jun 15
Linaro GCC 17 Feb 15
Z-machine Preservation Project 2 Jun 15
The Objective Caml 3 Jun 15
Obfuscated Tiny C Compiler
类似的软件
显影剂的其他软件 Fabrice Bellard
意见 Obfuscated Tiny C Compiler
最近浏览的软件
Excel MS Access Import, Export & Convert Software 1 Jan 15
Export Table to Excel for MS Access Standard 15 Apr 15
DBConvert for MS Access and Firebird 25 Jan 15
Excel Add-In for Elasticsearch 31 Mar 17
jQuery simplepicker 28 Feb 15
按类别搜索
热门软件
Trad4 11 May 15
GNU Binutils 17 Aug 18
Java Gui Builder 3 Jun 15
Python 22 Jun 18
GCC ARM Embedded 17 Aug 18
Zsh 17 Feb 15
GCC 16 Aug 18
评论没有发现