一直喜欢用很小很强大的软件,如uTorrent、EditPlus、WinRAR、UltraISO、VbsEdit等等,TCC也是其中的一员。
说起TCC就不得不提到TC,因为它们的缩写很像。TC是Turbo C的缩写,是Borland公司开发的DOS环境下的C语言集成开发环境,Borland公司的传奇就是从TC开始的。DOS时代已成为过去,Borland传奇也已成为历史,但是国内仍然有很多C语言教材里用TC作为编译器,谭浩强的烂书《C语言程序设计》就是其中的一本。
TCC是Tiny C Compiler的缩写,传说是目前最小的ANSI C语言编译器,支持Windows和Linux平台。Windows下的TCC解压后文件夹仅932KB,连1000KB都不到。Ubuntu系统可以通过apt-get install tcc命令来安装。你可以使用这个不到1000K的编译器编译你的C源码,它支持C的预处理,编译,机器码汇编和链接。编译速度也超过了GCC,而且它支持ISO C99标准,并且还包括了一些内存和数组边界的检查。它甚至还可以编译Linux的内核。
不仅TCC本身很小,而且TCC编译出来的程序也很小。用一个简单的Hello world程序就可以比较出来:
#include <stdio.h> int main() { printf("Hello, world\n"); return 0; }
- 用BCC 5.5编译得到的程序是51.0 KB (52,224 bytes)
- 用VC 6.0编译得到的程序是40.0 KB (40,960 bytes)
- 用TCC 0.9.25编译得到的程序是1.50 KB (1,536 bytes)
编译出来的程序的大小几乎可以和汇编语言写的相媲美,实乃编译病毒代码的最佳选择。很小很强大,不是么?