# 知心编译器- 中文版C语言编译器(基于TCC-Tiny C Compiler)
**Repository Path**: landv_admin/tcc
## Basic Information
- **Project Name**: 知心编译器- 中文版C语言编译器(基于TCC-Tiny C Compiler)
- **Description**: 知心编译器在TCC基础上进行开发的, 是一款完整的可以商业使用的全中文C语言开源编译器,可以完美的实现汉语编程,同时也是学习编译原理,编译器开发,汇编器开发,链接器开发等少有的完整的源代码参考对象。在商业使用的时候一定要加上原作者-FabriceBellard的版权说明。我是“小学生”,不喜勿喷,请大神嘴下留情!我深爱中文,希望汉语编程,中文编程,华语编程越来越好,加油!加油!
- **Primary Language**: C
- **License**: MulanPSL-2.0
- **Default Branch**: master
- **Homepage**: http://www.880.xin/
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 34
- **Created**: 2026-03-19
- **Last Updated**: 2026-03-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README

# 知心编译器- 中文版C语言编译器(基于TCC-Tiny C Compiler)





___
#### 实现目前世界上最小的中文自举编译器:
世界上最小的中文自举编译器源码:[世界上最小的中文自举编译器源码](https://gitee.com/zhiyuyan/zhi/blob/master/%E5%AE%9E%E4%BE%8B/c4%E7%BC%96%E8%AF%91%E5%99%A8%E6%BA%90%E7%A0%81/csd.c)
#### 整体架构图

#### 介绍
知心编译器在TCC基础上进行开发的, 是一款完整的可以商业使用的全中文C语言开源编译器,可以完美的实现汉语编程,同时也是学习编译原理,编译器开发,汇编器开发,链接器开发等少有的完整的源代码参考对象。几乎可以运行所有的C99源代码。可以编译Linux内核源码,
可以编译其他C语言编译器源码,目前知心编译器仅支持自举((自展)迭代升级。。特别声明在商业使用的时候一定要加上原作者-法布里斯·贝拉(FabriceBellard)的版权说明。本人血液里深爱中文,所以在努力做一款中文编译器供自己使用,同时分享出来供具有相同爱好的同胞使用。
我是“小学生”,不喜勿喷,请大神嘴下留情!母语中文汉字就是源代码,源代码就是注释,亲切!大小驼峰,空格,下滑杠都是为了解决英文的缺陷而出现的,而中文就不需要这些。汉语编程,中文编程,华语编程加油!加油 :v: !不要跟我说编程不需要英语,只是几个助记符号,
跟英语无关,但就这几个关键词就会让中国很多没有英文基础的和英文基础差的人望而却步,更不要说各种英文异常错误警告提示了,用英文关键词编程就是天然的英语文化基因镶嵌在了程序里。有实现全中文编程的技术和能力,为什么不把中国的文化基因嵌入到应用程序开发中呢?
字母语言编程对中国人来说就是天然屏障,汉字对中国人来说就是天然亲和,就像下面的例子观感上就有障碍更不用说其他的了,中国人即使不会编程,在看到中文版的C语言第一个程序,根据汉字字面含义也知道它是打印一句话“您好!中文编程。”。而英文版的C语言第一个程序没接触过编程的人
还真不知道他在干啥。
四位并行全加器之4位超前进位器:
```
进位1=与1
进位2=与2+与1或2
进位3=与3+(与2+与1或2)或3
进位4=与4+(与3+(与2+与1或2)或3)或4
```
```
Carry1=OR1
Carry2=AND2+AND1OR2
Carry3=AND3+(AND2+AND1OR2)OR3
Carry4=AND4+(AND3+(AND2+AND1OR2)OR3)OR4
```
C语言的第一个程序:
```
#导入
#导入 <标准库.h>
整数 开始(整数 参数量 ,字符 **参数组)
{
打印("您好!中文编程。");
返回 0;
}
```
```
#include
int main(int arc , char **arv)
{`
printf("hello world!");
return 0;
}
```
真希望有一天,咱们中国的孩子学习编程再也没有语言的障碍。到那个时候,编程就是个烂大街的活。咱们农民也可以编程,是真正名副其实的码农了 :smile: 。编译器源代码下载。
同步项目知音编辑器源码:[https://gitee.com/zhi-yu-yan/zhiyin](https://gitee.com/zhi-yu-yan/zhiyin)
项目交流koukou群:500558920
中文编程官网:[www.880.xin](http://www.880.xin)
配套IDE(知音编辑器)正在开发中:[https://gitee.com/zhiyuyan/zhiyin.git](https://gitee.com/zhiyuyan/zhiyin.git)
#### 与原TCC相比增加的特性和功能
| 功能 | 知心编译器 | TCC |
|----------------|----------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------|
| 对中文编程的支持 | 变量名称,函数名称,预定义指令,关键词,等(几乎可以零字母全中文编程) | 变量名称,函数名称 |
| 对GBK和UTF-8编码的处理 | 现在已经大部分解决TCC对各种编码兼容处理的问题(GBK和UTF-8) | 在中文编程有汉字路径和汉字文件名的情况下,以GBK编码编译出来的TCC只能编译GBK项目,处理UTF-8也面临同样的问题,另外如果编译TCC的编码没有和操作系统编码保持一致,问题更多。 |
| 对GC(回收)支持 | 配有GC库(目前实验阶段还没有引入到现有库内) | 无 |
| 配套集成开发环境(IDE) | 正在开发中... | 无 |
| 编译字符集指定选项"-source-charset" | -source-charset=UTF-8 或 -source-charset=GBK (仅支持UTF-8或GBK)调度不同字符集编码的运行时库来适应不同的编码 | 无 |
#### 实例
1. `#导入 `
2. `#导入 <标准库.h>`
3. `整数 开始(整数 参数数量 ,字符 **参数数组)`
4. `{`
5. ` 打印("您好!中文编程。");`
6. ` 返回 0;`
7. `}`
#### 知语言和C语言关键词对照表:
| 编号 | 知语言 | C语言 |
|----|--------|-|
| 1 | 无 |void |
| 2 | 短整数 | short|
| 3 | 整数 | int|
| 4 | 长整数 | long|
| 5 | 浮点 | float|
| 6 | 双精度 | double|
| 7 | 字符 | char|
| 8 | 布尔 | _Bool|
| 9 | 如果 | if|
| 10 | 否则 | else|
| 11 | 选择 | switch|
| 12 | 分支 | case|
| 13 | 执行 | do|
| 14 | 判断 | while|
| 15 | 循环 | for|
| 16 | 继续 | continue|
| 17 | 转到 | goto|
| 18 | 跳出 | break|
| 19 | 返回 | return|
| 20 | 外部 | extern|
| 21 | 静态 | static|
| 22 | 无符号 | unsigned|
| 23 | 有符号 | signed|
| 24 | 取类型 | typeof|
| 25 | 取大小 | sizeof|
| 26 | 常量 | const|
| 27 | 寄存器 | register|
| 28 | 内联 | inline|
| 29 | 易变 | volatile|
| 30 | 结构体 | struct|
| 31 | 共用体 | union|
| 32 | 枚举 | enum|
| 33 | 类型定义 | typedef|
| 34 | 默认 | default|
| 35 | 自动 | auto|
| 36 | 限制 | restrict|
| 37 | 断言 | assert|
| 38 | 导入 | include|
| 39 | 导入下一个 | include_next|
| 40 | 定义 | define|
| 41 | 如果已定义 | ifdef|
| 42 | 如果未定义 | ifndef|
| 43 | 否则如果 | elif|
| 44 | 结束如果 | endif|
| 45 | 已定义 | defined|
| 46 | 取消定义 | undef|
| 47 | 错误 | error|
| 48 | 警告 | warning|
| 49 | 行号 | line|
| 50 | 指示 | pragma|
#### 安装教程
1. “TCC编译器安装包.rar”下载下来之后解压到您想要存放的文件夹目录,然后设置系统环境变量,在“path”变量下添加"zhi.exe"所在文件夹路径即可.命令行输入命令“zhi”,即可验证是否 安装成功。



2. 打开"win"文件夹(文件夹“备份”只是“win”目录的备份,可以忽略或删除),运行“bianyi.bat”批处理文件(需要先完成第一步“知心编译器安装包”的安装。本编译器整体汉化之后仅支持自举编译),即可编译出新的“TCC编译器安装包.rar”(整个“win”目录)。


验证成果:使用编译出来的新的zhi.exe可执行文件来编译源码"win.z"(“.z”是知心编译的专用后缀扩展名称.当然也可以改成"win.c")得到一个视窗.

#### 使用说明
1. 命令行:zhi hello.c 或zhi hello -o hello.exe 即可编译获取hello.exe可以执行文件
2. 命令行:zhi -run hello.c或zhi -run hello.z 无需编译即可直接运行*.c或*.z脚本源文件。
3. 命令行:zhi -v 显示知心编译器版本信息
4. 命令行:zhi -h 获取知心编译器简明使用教程
5. 命令行:zhi -about 获取知心编译器相关信息
6. 命令行:bianyi.bat 在Windows平台使用此批处理文件,可以完成知心编译器自己编译自己(编译器自举)
7. C语言的源码(C99标准)只需要修改“main(){}”为“开始(){}”即可完美运行编译。
#### Windows视窗范例使用教程
1. 下载“知心编译器安装包”,解压到想要安装的目录,配置好系统环境变量。
2. 下载“winAPI完整版”,解压覆盖到上一步的安装目录。
3. 下载“windows视窗范例”,解压随意的目录。
windows视窗范例解压后的目录:

运行批处理文件开始编译windows视窗:

windows视窗编译之后的效果:

windows视窗升级之后编译效果图([https://gitee.com/zhi-yu-yan/zhiyin](https://gitee.com/zhi-yu-yan/zhiyin)):

GTK+3+Scintilla版本:项目网址:[https://gitee.com/zhiyuyan/zhiyin.git](https://gitee.com/zhiyuyan/zhiyin.git)

#### 参与贡献
1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request
#### 特技
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com)
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目
4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
#### 兄弟项目推荐
1. TCC(Tiny CC):https://repo.or.cz/tinycc.git/shortlog/refs/heads/mob
2. chibicc: https://github.com/rui314/chibicc
3. LCC: https://github.com/drh/lcc
4. 9cc: https://github.com/rui314/9cc