请输入您要查询的百科知识:

 

词条 Tiny C Compiler
释义

概述

Tiny C Compiler(TCC) 是一个轻量级高速的C语言编译器。与其他C语言编译器不同,它是一个自我依赖的系统,不需要其他外部的汇编器和连接器。TCC的编译速度十分快,以至于编译一些大型项目都不需要Makefile文件。

TCC支持ANSI C,大部分的 ISO99 C的新标准和许多GNU C扩展以及C语言和汇编语言混编。

TCC可以用来执行 C 脚本,即C语言源文件可以像Perl和Python一些脚本语言一样直接执行。编译过程十分迅速和可执行文件的执行速度不相上下。

TCC可以自动生成内存和边界检查,并允许所有的指针操作,即使没有相应库文件的引入,编译器依旧可以完成相应的检查工作。

TCC主要支持i386体系下的Linux和Windows系统。现在已经有测试版的ARM和TMS320C67XX体系下的TCC编译器。

特点

你可以在任何机器上使用该编译器编译C语言,一个完整的包括C语言预处理器,C语言编译器,C语言汇编器和C语言的连接器在内的TCC可执行程序只有100KB左右大小。

TCC在生成X86代码时没有字节头部开销,编译速度要比GCC快几倍。

编译器 时间 代码行数/秒 MB/秒

TinyCC 0.9.22 2.27 859000 29.6

GCC 3.2 -O0 20.0 98000 3.4

无限制

任何C语言动态库都可以被直接引用,ISOC99的绝大多数标准也可自由使用。

安全

由于内在可选的内存和边界检查,将会减少很多潜在的安全漏洞。

命令行参数

tcc [options] [infile1infile2...] [`-run'infileargs...]

TCC 命令行选项和gcc命令行选项十分类似主要的区别在于TCC可以直接运行可执行程序并带参数。

下面是一些简单的例子

tcc -run a.c编译并执行 a.c

tcc -run a.c arg1

编译并带参数arg1执行 a.c

tcc a.c -run b.c arg1

编译并连接执行 `a.c' 和 `b.c',参数arg1为main函数第一个参数

tcc -o myprog a.c b.c

编译并连接a.c 和 b.c并生成可执行程序myprog

tcc -o myprog a.o b.o

连接a.o和b.o生成可执行程序myprog

tcc -c a.c

编译a.c并生成目标文件a.o

tcc -c asmfile.S

编译asmfile.S并生成目标文件asmfile.o

tcc -c asmfile.s

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/3/21 2:18:25