TCC(Tiny C Compiler)介绍
TCC是一个超小、超快的标准C语言编译器。她可以从这里(http://bellard.org/tcc/)下载到;注意,要下载http://download.savannah.nongnu.org/releases/tinycc/tcc-0.9.25-win32-bin.zip
和notepad2一样,TCC也是免费的!(再一次酷毙了!!!)
下载好之后,解压到自己的某个文件夹里面:
我们所需的编译系统,就都在tcc这个文件夹里面。
TCC的使用方法是这样的:http://bellard.org/tcc/tcc-doc.html 英文的?当然,早就告诉你要好好学英语了。
举个例子说明TCC的用法:
首先我已经有了一个.c的源文件。

用Notepad2写好源代码,保存好:

接下来,使用TCC检验我们的程序是否设计正确。
首先我们要把TCC的目录添加到系统的path环境变量中去。(不知道啥叫环境变量的,请自己google一下。)具体做法如下:
右键单击“我的电脑”==》“属性”==》“高级”==》“环境变量”==》(双击系统变量中的)“path”
![]()
在最后添加上形如 ;d:\temp\tcc 用以指明tcc的位置。注意:之前的;是用来分隔各个位置的,千万不能少。接着,一路“确定”,就好了。
接下来,我介绍2种使用TCC的方法。这两种方法其实是一回事儿,但我更喜欢用第二种。
第一种:编译链接源代码,生成可执行文件。
打开命令行提示符:“开始”==》“运行”(输入cmd)==》“确定”
转到.c源代码所在的目录,编译链接源代码:
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.C:\Documents and Settings\Administrator>cd d:\temp
C:\Documents and Settings\Administrator>d:
D:\temp>
编译链接的命令是:tcc 源代码文件名(文件名后面的.c千万不可省略,tcc后面一定要有空格);示例如下
D:\temp>tcc test.c
test.c:5: missing terminating " character
这种情况,说明在test.c文件的第5行出现了错误,错误的原因是“缺少表示终止的"字符”。于是,我们在notepad2中修正我们的代码,保存,如下:

再次回到命令行提示符(那个黑不溜秋的界面下),编译链接:
D:\temp>tcc test.c
D:\temp>
什么动静都没有?没消息,就是好消息!这是电脑世界的行为准则。你看看你的文件夹,里面是不是多了这个:

OK,双击这个.exe的可执行文件,看看运行结果吧。哦?屏幕上一闪而过?啥也没看清,咋办?你可以直接在刚才的命令行提示符下面输入test.exe回车来执行这个文件:
D:\temp>test.exe
Haha
D:\temp>
你看,搞定了!
=========================
一个很重要的秘诀:在命令行提示符下面,我们往往要重复不断地输入许多同样的命令。每次都去打这些命令,是件很烦人事情。其实大可不必如此的,你只需要打一次命令,下次要重复使用这条命令的时候,你就不必再打字了,只要按键盘上“向上”的箭头方向键……看!刚才的命令是不是出来了?So cool!
=========================
上面就是我介绍的第一种使用TCC的方法。还有第二种用法:
有时候,我并不喜欢让TCC生成.exe的可执行文件,然后再去运行它。我只需要使用
tcc -run 源代码文件名
就可以直接让TCC跳过编译链接的步骤,直接运行我们的程序了(当然,前提是你的代码没有语法错误);如下:
D:\temp>tcc -run test.c
Haha
D:\temp>
=========================
评价TCC的优点和缺点:
优点:
- 小巧玲珑。塞在U盘里,随时用,随时有,连安装都不用。
- 支持最新的C语言国际标准。能在TCC里面跑的程序,在其他的编译环境下都能跑的动。
- 快!TCC的运行速度实在是快!
缺点:
- 没有断点和单步执行的跟踪系统,面对非常复杂的程序逻辑的时候,不好调试程序的运行时逻辑错误。
小结:TCC实在酷毙了。我很喜欢她!
TCC(Tiny C Compiler)介绍的更多相关文章
- TCC : Tiny C Compiler (2018-2-6)
饭墙下载,有缘上传: https://files.cnblogs.com/files/bhfdz/tcc-0.9.27-win32-bin.zip https://files.cnblogs.com/ ...
- Tiny C Compiler简介-wiki
Tiny C Compiler(缩写为TCC.tCc或TinyCC)是一个用于x86(16/32位)或x86-64(64位)系统的C编译器,开发者为Fabrice Bellard.软件是设计用于低级计 ...
- Tiny C Compiler(Tcc)
catalog . Tcc introduction . Tcc安装配置 . Tcc Programing 1. Tcc introduction TCC基本和GCC兼容 . 符合ANSI C(C8 ...
- C 环境设置(转自菜鸟教程)
C 环境设置 本地环境设置 如果您想要设置 C 语言环境,您需要确保电脑上有以下两款可用的软件,文本编辑器和 C 编译器. 文本编辑器 这将用于输入您的程序.文本编辑器包括 Windows Notep ...
- Awesome C/C++
Awesome C/C++ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny things. In ...
- C/C++ 框架,类库,资源集合
很棒的 C/C++ 框架,类库,资源集合. Awesome C/C++ Standard Libraries Frameworks Artificial Intelligence Asynchrono ...
- awesome cpp
https://github.com/fffaraz/awesome-cpp Awesome C/C++ A curated list of awesome C/C++ frameworks, lib ...
- 【干货】国外程序员整理的 C++ 资源大全【转】
来自 https://github.com/fffaraz/awesome-cpp A curated list of awesome C/C++ frameworks, libraries, res ...
- 为编译器的实现者提供一个精确的定义:ANSI C
编译器的实现 常用C++编译器推荐_w3cschool https://www.w3cschool.cn/cpp/cpp-zxm72ps8.html 常用C++编译器推荐 由 Alma 创建, 最后一 ...
随机推荐
- 主席树学习笔记-hdu-2665
主席树就是对每个历史版本都建了一颗线段树,这样我们在统计一些问题的时候,对于一个区间[L,R]的询问,就可以利用前缀和的思想找到第L-1和第R颗历史版本的线段树来处理查找.由于这样空间需求就增大了,注 ...
- cf-789A (思维)
A. Anastasia and pebbles time limit per test 1 second memory limit per test 256 megabytes input stan ...
- Graph (floyd)
Description Everyone knows how to calculate the shortest path in a directed graph. In fact, the oppo ...
- python中异常处理--raise的使用
https://www.cnblogs.com/zhangyin6985/p/7229553.html 当程序出现错误,python会自动引发异常,也可以通过raise显示地引发异常.一旦执行了rai ...
- bzoj1084&&洛谷2331[SCOI2005]最大子矩阵
题解: 分类讨论 当m=1的时候,很简单的dp,这里就不再复述了 当m=2的时候,设dp[i][j][k]表示有k个子矩阵,第一列有i个,第二列有j个 然后枚举一下当前子矩阵,状态转移 代码: #in ...
- XE里, TStringField 还是 ansi的
{ TStringField } TStringField = class(TField) private FFixedChar: Boolean; FTransliterate: Boolean; ...
- AE项目打包
Holinz AE项目打包 打包详细信息:Setup Factory 7.0打包软件,VS2005+AE92下的Winform项目1.依赖项: Dot Net Framework20 AO ...
- mybatis左连接需要输出左表的指定内容与筛选
SELECT rpl.ID, rpl.DID, rpl.TRADE_TYPE, rpl.TRADE_TIME, rpl.CALL_TIME, rpl.TRADE_ADDR, rpl.RECEIVE_P ...
- 组件的 keep-alive 简介
本篇文章,我们来讲一下keep-alive的实现. 更容易看懂 Vue中,有三个内置的抽象组件,分别是keep-alive.transition和transition-group, 它们都有一个共同 ...
- [转]数据库更新(Update语句)查询
2011-03-27 10:40:11| 分类: Database |举报|字号 订阅原文出自:http://blog.csdn.net/ylnjust02/archive/2005/12/10/54 ...

在最后添加上形如 ;d:\temp\tcc 用以指明tcc的位置。注意:之前的;是用来分隔各个位置的,千万不能少。接着,一路“确定”,就好了。